[CleanCode] 형식 마추기
형식 마추기
적절한 행 길이를 유지하라
신문 기사처럼 작성하라
개념은 빈 행으로 분리하라
- 빈 행은 새로운 개념을 시작한다는 시각적 단서다.
세로 밀집도
- 서로 밀집한 코드 행은 세로로 가까이 놓여야 한다.
수직 거리
- 변수는 사용하는 위치에 최대한 가까이 선언한다.
- 반면, 인스턴스 변수는 클래스 맨 처음에 선언한다.
- 한 함수가 다른 함수를 호출한다면 두 함수는 세로로 가까이 배치한다.
- 친화도가 높을수록 코드를 가까이 배치한다.
들여쓰기한다.
팀 규칙을 지킨다.
객체와 자료 구조
자료/객체 비대칭
- 객체 지향 코드에서 어려운 변경은 절차적인 코드에서 쉬우며, 절차적인 코드에서 어려운 변경은 객체지향 코드에서 쉽다.
- 새로운 함수가 아닌
새로운 자료 타입
이 필요한 경우클래스와 객체 지향 기법
이 적합하다. - 반면, 새로운 자료 타입이 아닌라
새로운 함수
가 필요한 경우절차적인 코드
가 적합하다. - 모든 것이 객체라는 생각은 미신이다. 때로는 단순한 자료 구조와 절차적인 코드가 가장 적합한 상황도 있다.