1. 깨끗한 코드
- 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업이 프로그래밍, 이것을 명시한 결과가 코드
- 우리 모두는 대충 짠 프로그램이 돌아간다는 사실에 안도감을 느끼고 나중에 정리하게싸고 다짐하지만, 나중은 결코 오지 않는다
- 깨끗한 코드를 만드는 노력이 비용을 절감하는 방법 뿐만 아니라 전문가로써 살아남는 길이다
- 깨끗한 코드는 한가지에 집중하고, 반드시 필요한 내용만을 담아야 한다
- 중복을 피하라, 한 기능만 수행하라, 제대로 표현하라, 작게 추상화하라
- @author는 저자이며, 저자에게는 독자가 있다, 그리고 저자에게는 독자와 소통할 책임도 있다
2. 의미 있는 이름
- 변수나 함수나 클래스의 이름은 존재 이유가 무엇인지, 수행 기능, 사용 방법에 대해 의도를 명확히 밝혀야 한다
- 그릇된 정보는 피해라, 실제 List가 아니면 accountList 이렇게 짓지 말고 Accounts 이런식으로 명명할 것
- 의미 있게 구분할 것, Product라는 클래스가 있을때 다른 클래스를 ProductInfo 또는 ProductData 이렇게 불분명한 단어를 붙이지 말 것
- 발음하기 쉬운 이름을 사용해라, genymdhms... 지금 봐도 뭔지도 모르겠다........
- 검색하기 쉽게 이름을 지어라, for문 안에 i 같은 이런걸 제외하곤 찾아보기 쉽게 지을 것
- 클래스 이름은 명사로, 메서드 이름은 동사로
- 생성자를 오버로드 할때는 static 팩토리 메소드를 사용할 것
- 일관성 있게 어휘를 사용해라, 어떤 곳은 get, 어떤 곳은 retrieve 등 혼잡스럽게 사용하지 말 것
- 도메인 (해법 영역)에서 가져온 이름을 사용해라, 적절한 프로그램 용어가 없으면 문제 영역에서 가져올 것
- 불필요하게 클래스에 특정 어플리케이션의 명칭을 사용하지 마라, IDE에서 자동 완성 키를 눌렀을때 방해하는 이유가 된다
3. 함수