Clean Code - 제 1장. 의미 있는 이름

Clean Code - 의미 있는 이름

모두 좋은 내용이지만, 개인적으로 핵심만 정리했다.

의미있게 구분하자

애매한 -Info, -Data, -Manager, -Processor 같은 접미사는 피하자. 정확한 정보제공을 위한 단어만 사용하자.

발음과 검색이 쉬운 단어를 사용하자.

 타 프로그머와 육성으로 소통하기 쉬운 단어를 사용하자. 그리고 검색이 쉬운 단어가 프로그램 수정을 더 쉽게 할 수 있다. 만약 알파벳 1글자로 사용하는 변수를 사용하려면, 메서드에서 로컬변수 혹은 Loop 의 변수 초기화 때만 사용하자.

해법 영역/문제 영역의 이름을 활용하자.

 해법 영역은 컴퓨터 공학 분야를 이야기하는 것 같다. Visitor 패턴을 사용할 때는 AccountVisitor, Queue를 사용하면 JobQueue 같은 이름을 사용하자. 해법 영역에서 답을 못찾으면 구현하려는 Domain 영역에서 작명해보자.

구현에 관련된 작명.

인터페이스와 구현클래스

인터페이스와 구현 클래스 이름 중 인코딩 방식을 넣어야 한다면 구현 클래스를 추천한다. 
  • 인터페이스 : ShapeFactory
  • 구현 : ShapeFactoryImpl

생성자 메서드

 생성자를 중복정의 할때, 정적 팩토리 메서드를 사용하자. 메서드는 인수를 설명하는 이름을 사용하자.
  • 생성자 : Complex fulcrumPoint = new Complex(23.0)
  • 정적 메서드 : Complex fulcrumPoint = Complex.FromRealNumber(23.0);

마치며

  사람들이 이름을 바꾸지 않으려는 이유 하나는 다른 개발자가 반대할까 두려워서다. 하지만 좋은 코드를 만드는 우리의 책임감이 있다면 일단 Nudge 부터 시작해야 한다. 




댓글

이 블로그의 인기 게시물

JPA 와 함께 - 느낀점

Scott 과 함께 - Recursive Query 구현하기