바위타는 두루미

[CleanCode 정리] 2.의미있는 이름 본문

book

[CleanCode 정리] 2.의미있는 이름

DoRoMii 2022. 2. 20. 21:31
728x90

기억하고 싶은 내용

Naming 이름지을때 생각해보아야 할 규칙 

- 의도를 분명히 하기. thelist ( X) , gameBoard (O)

-그릇된 정보를 피하기

  - 개발시 이용하는 용어 주의하기 List가 아닌데 List사용 X

   - 흡사한 이름 사용하지 않기 - 한눈에 보기 어려운 이름

- 의미있게 구분하기 : 컴파일러만 통과하는 코드는 x

  - 연속적인 숫자를 추가하는경우 : 의미없는 이름

  - 두 변수가 구분이 안되는 경우 ~Data, ~Info => 구분하기 어렵다 

- 발음하기 쉬운 이름 사용하기 

- 검색하기 쉬운 이름

  - 이름길이는 범위크기에 비례해야한다.

-인코딩을 피하라

  - 타입표기할 필요없다.

  - 접두어 붙일 필요없다. -> 클래스, 함수는 작아져야하고, 멤버변수를 다른 색상으로 표시하는 IDE를 사용해야 마땅함.

  - 인터페이스클레스의 경우에는 구체클레스에 접두어 또는 접미어를 붙이는 것이 낫다 ~Imp, C~

-자신의 기억력을 자랑하지 마라

- 클레스 이름 : 명사나 명사구 |  but Manager, Processor, Data, Info 단어 피하고 , 동사는 사용하지 않는다.

  ex ) Customer, AddressParser

- 메서드 이름 : 동사나 동사구 | 접근자, 변경자, 조건자는 get, set, is를 붙인다

  ex) postPayment, deletePage, save 

  * 생성자를 중복 정의할때는 정적 펙토리 메서드를 이용한다. 

  ex) Complex fulcrumPoint  = Complex.FromRealNumber(23.0) (O)

        Complex fulcrumPoint = new Complex(23.0) (X)

- 한개념에 한단어 사용하기 

 ex ) 똑같은 메서드를 class에 따라 fetch, retrieve, get 으로 사용 X

        비슷한 코드 기반에 controller, manager, driver을 섞어쓰면 혼란

- 한 단어를 두가지 목적으로 사용하지 마라 

  ex ) 두개를 더해서 새로운 값을 만드는 것 : add , 다른 숫자 한개를 더하는것 : add =>X

- 해법용어 (전산용어, 알고리즘이름, 패턴, 수학 용어)를 사용하는것 추천

- 문제 영역과 관련이 깊다면 문제 영역의 용어를 사용해도 됨

- 의미있는 맥락을 추가하라 

 

오늘 읽은 소감

대부분의 내용은 상식선으로 알고 있었지만 의외의 조언들이 있어서 신기했다. 

- 멤버변수에 접두어를 붙일 필요없다. 대신 멤버변수를 다른 색상으로 표시하는 IDE를 사용해야 마땅하다는 사실 

- Data, Info 를 주의하자 

- 이름 길이는 범위에 비례하도록 하자.

'book' 카테고리의 다른 글

[CleanCode]9.단위테스트  (0) 2022.03.06
[CleanCode]6.객체와 자료구조  (0) 2022.03.02
[CleanCode] 5. 형식맞추기  (0) 2022.03.01
[CleanCode]4.주석  (0) 2022.02.24
[CleanCode]3.함수  (0) 2022.02.22
Comments