[Good Code Bad Code] 가독성 높은 코드를 작성하라-3

2025. 2. 17. 23:52·📚 개발자의 서재/Good Code, Bad Code
해당 포스팅은 톰 롱의 Good Code, Bad Code (P.146~157)를 읽고 정리한 글입니다.

 

설정되지 않은 값을 사용하지 말라

하드 코드로 작성될 값이 필요한 경우가 존재한다. 예를 들어 단위 변환이나 계산식에 필요한 계수, 작업 재시도 최대 횟수와 같은 조정 가능한 파라미터 값 그리고 템플릿을 나타내는 문자열 등이 있다.

 

처음 보는 개발자는 그 의미를 쉽게 이해하기 어렵다. 코드에 설명되지 않은 값이 포함되면 혼란을 초래하고, 이는 버그로 이어질 수 있다. 따라서 해당 값이 의미하는 바를 다른 개발자들이 명확하게 이해할 수 있도록 해야 한다. 이를 위한 방법은 다음과 같다.

  • 잘 명명된 상수를 사용하라
  • 잘 명명된 함수를 사용하라 (상수를 반환하는 공급자 함수 / 변환을 수행하는 헬퍼 함수)

상수나 함수를 사용하여 값을 표현하거나 처리하면 가독성을 높이면서도 추가 작업이 거의 필요하지 않다. 함수를 사용할 경우 재사용성을 고려할 가치가 있으며, 재사용이 필요하다면 유틸리티 클래스에 포함하는 것이 좋다.


익명 함수를 적절히 사용하라

익명 함수는 간단한 로직에 적합하지만, 명명 함수와 달리 함수명으로 정보를 제공하지 않기 때문에 가독성을 해칠 수 있다. 명명 함수를 정의하려면 반복적인 코드가 많아질 수 있으나, 익명 함수의 내용이 한눈에 들어오지 않는다면 오히려 가독성이 저하된다. 따라서 구현 세부 사항은 명명 함수로 분리하는 것이 좋다.

 

익명 함수가 너무 길면 가독성이 떨어지므로, 여러 개의 명명 함수로 나누는 것이 재사용성과 가독성 측면에서 더욱 효과적이다.

저작자표시 비영리 변경금지

'📚 개발자의 서재 > Good Code, Bad Code' 카테고리의 다른 글

[Good Code Bad Code] 예측 가능한 코드를 작성해라-2  (0) 2025.02.19
[Good Code, Bad Code] 가독성이 높은 코드를 작성하라(마무리) /예측 가능한 코드를 작성하라 -1  (0) 2025.02.18
가독성 높은 코드를 작성하라-2  (0) 2025.02.16
가독성 높은 코드를 작성하라-1  (0) 2025.02.15
복구 가능성에 따른 적절한 오류 전달 기법  (2) 2025.02.14
'📚 개발자의 서재/Good Code, Bad Code' 카테고리의 다른 글
  • [Good Code Bad Code] 예측 가능한 코드를 작성해라-2
  • [Good Code, Bad Code] 가독성이 높은 코드를 작성하라(마무리) /예측 가능한 코드를 작성하라 -1
  • 가독성 높은 코드를 작성하라-2
  • 가독성 높은 코드를 작성하라-1
l'avenirJun
l'avenirJun
  • l'avenirJun
    오늘도 꾸준히 개발
    l'avenirJun
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • 📚 개발자의 서재 N
        • 객체지향의 사실과 오해
        • Good Code, Bad Code
        • 도메인 주도 개발 시작하기 N
      • 🔧 트러블 슈팅
      • Java
      • Spring
      • 운영체제
        • 공룡책 학습
      • 알고리즘
      • GIT
      • 면접 지식
      • Spring 단기심화 2기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    모듈화
    협력
    애그리거트 루트
    객체
    리포지터리
    DIP
    코드 계약
    타입
    티스토리챌린지
    코드트리
    가독성
    표현 영역
    역할
    추상화
    specification
    오블완
    도메인 주도 개발 시작하기
    good code bad code
    유스케이스
    코딩테스트
    매핑 구현
    책임
    캡슐화
    인터페이스
    도메인 모델
    메시지
    애그리거트
    객체지향의 사실과 오해
    코딩트리조별과제
    책임-주도 설계
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
l'avenirJun
[Good Code Bad Code] 가독성 높은 코드를 작성하라-3
상단으로

티스토리툴바