형식을 맞추는 목적
- 코드 형식은 의사소통이다. (협업할 때 주의)
적절한 행 길이를 유지하라
- 신문 기사처럼 작성하라.
- 이름은 간단하면서도 설명이 가능하게 해라.
- 소스파일이 첫 부분은 고차원 개념이나 알고리즘을 설명한다.
- 내려갈수록 의도를 묘사한다.
- 개념은 빈 행을 분리하라.
- ex) 패키지 선언부, import 문, 각 함수 사이에 빈 행이 들어가면 가독성이 높아진다.
- 세로 밀집도
- 서로 밀접한 코드 행은 세로로 가까이 놓여야 한다.
- 수직 거리
- 변수 선언 - 사용하는 위치에 최대한 가까이에 선언한다.
- 인스턴수 변수 - 클래스 맨 처음에 선언한다.
- 종속 함수 - 한 함수가 다른 함수를 호출한다면, 두 함수는 세로로 가까이 배치한다.(가능하다면 호출하는 함수가 먼저)
- 개념적 유사성 - 친화도가 높을 수록 코드는 가까이에 ex) 종속성, 비슷한 동작 수행.
가로형식 맞추기
- 필자는 120자 정도의 행 길이를 제한한다.
- 가로 공백과 밀집도 - 수식은 알아 보기 쉽도록.
- 들여쓰기 - 범위로 이뤄진 계층을 표현하기 위해 들여써라.
review
세로 밀집도와 수직거리를 유념해서 코드를 짜면 이해하기 쉬운 코드가 될 것이다. 스프링 부트로 개발할 때 (이 뿐만 아니라) controller가 너무 복잡해진다고 느낄 때가 종종 있다. Restful 하게 API를 설계하더라도 특정 리소스에 기능이 많이 부여가 될 때 정돈되지 않은 느낌을 받을 때가 있는데, 세로 밀집도와 수직거리를 고려하여 코드를 짜면 한결 좋은 코드가 탄생할 것이다. 꼭 잊지 않기! 🏃
출처) clean code / 인사이트
'Book review > clean code' 카테고리의 다른 글
7장. 오류처리(clean code) (0) | 2021.08.30 |
---|---|
6장. 객체와 자료구조(clean code) (0) | 2021.08.25 |
4장. 주석(clean code) (0) | 2021.08.06 |
3장. 함수(clean code) (0) | 2021.08.06 |
2장. 의미 있는 이름(clean code) (0) | 2021.08.04 |