본문 바로가기
Book/Clean Code

제 2장 의미 있는 이름

by 라바킴 2021. 4. 11.

#의도를_분명히

- 고려 사항

  - 존재 이유는? 수행 기능은? 사용 방법은?

  - 주석이 필요하다는건 의도 표현이 불충분했다는 것

 

#그릇된_정보_지양

- 다르게 해석할 여지가 많은 함축어나 단어는 쓰지 말 것

- 서로 비슷해서 헷갈릴 이름을 사용하지 않게

 

#의미있는_구분

- 연속된 숫자나 불용어 추가하지 말 것

  - a1, a2, ..., aN

  - a, an, the, Info, Data, Manager, Process

- 구분이 안되는 예시

  - NameString / Name

  - moneyMount / money

  - accountData / account

  - theMessage / message

 

#발음하기_쉽게, 검색하기 쉽게

- 마음대로 축약해서 넣지 말 것

- 여러 곳에서 사용한다면 검색하기 쉽게 상세히

  - 이름 길이는 범위 크기에 비례 

 

#인코딩_지양

- 헝가리식 표기법은 구닥다리

  - 당시엔 컴파일러가 타입 점검을 안해줘서 타입을 기억하기 위해 변수명에 표기했음

  - 그러나 이젠 유형을 나타내는 접두사, 접미사는 더 이상 필요없음

    - ex) m_dsc, IShapeFactory

 

#클래스는_명사_매서드는_동사

- 클래스, 객체 이름은 명사나 명사구

  - Customer, WikiPage, Account, AddressParser 

- 메서드 이름은 동사나 동사구

  - posrPayment, deletePage, save

  - 접근자, 변경자, 조건자는 앞에 get, set, is 붙이기

 

  #명료하고_평범하게

- 한글자 변수 띡 써둬도 의미를 항상 생각할 수 없다

  - 자신의 기억력을 과신하지 말 것

- 드립친다고 자기만 아는 용어 쓰지 말 것

 

#한_개념에_한_단어만

- 똑같은 동작의 메서드를 fetch, get, retrieve 같은 것 중 하나로 통일

 

#기술용어_활용

- 어차피 코드 읽는 사람도 개발자임

 

#맥락추가

- 단독으로 의미 파악이 어려운 변수인 경우 접두어 추가

  - 좀 더 큰 개념에 속한다는 것을 명시

  - state? addrState!

 

 

 

'Book > Clean Code' 카테고리의 다른 글

제 3장 함수  (0) 2021.05.16
제 1장 깨끗한 코드  (0) 2021.04.03

댓글