[클린코드] 2장. 의미 있는 이름

짱J·2023년 1월 7일
0

클린코드

목록 보기
2/2
post-thumbnail

1️⃣ 책에서 기억하고 싶은 내용

  • 네이밍 컨벤션을 고려해야 할 부분: 변수, 함수, 인수, 클래스, 파일명, 디렉토리명

의도를 분명히 밝혀라

변수나 함수 그리고 클래스 이름을 지을 때는 아래와 같은 질문에 답해보자.

  • 변수(혹은 함수나 클래스)의 존재 이유는?
  • 수행 기능은?
  • 사용 방법은?

따로 주석이 필요한 이름은 의도를 분명히 드러내지 못한 이름이다.

경과 시간을 나타내는 변수의 이름을 짓는다고 가정하자.

int d; // 의도를 알기 어려운 변수명
int elapsedTimeInDays;
int daysSinceCreation;
int daysSinceModification;
int fileAgeInDays;

d는 아무 의미도 드러나지 않는다. 그러므로 아래 4개처럼 측정하려는 값이나 단위를 표시해주면 변수의 의도를 더 명확히 나타낼 수 있다.

다른 예시를 봐보자.

public List<int[]> getThem() {

}

코드가 복잡하지 않지만, 코드가 하는 일을 짐작하기 어렵다.

  • theList에 무엇이 들었는가?
  • theList에서 0번째 값은 왜 중요한가?
  • 값 4의 의미?
  • 반환된 list1은 어떻게 사용되는가?
public List<int[]> getFlaggedCells() {

}

2️⃣ 읽은 소감

3️⃣ 잘 이해되지 않는 내용

profile
[~2023.04] 블로그 이전했습니다 ㅎㅎ https://leeeeeyeon-dev.tistory.com/

0개의 댓글