본문 바로가기

클린한 코드/Clean Code

[클린 코드] 5장. 형식 맞추기

728x90

1. 적절한 행 길이를 유지하라

  • 일반적으로 작은 파일이 큰 파일보다 이해하기 쉽다.
  • 신문 기사처럼 작성하라
    • 이름은 간단하면서도 설명이 가능하도록 짓자.
    • 소스 파일 첫 부분은 고차원 개념과 알고리즘을, 아래로 내려갈수록 의도를 세세하게 묘사하자. (저차원 함수와 세부 내역)
  • 개념은 빈 행으로 분리하라
    • 생각 사이는 빈 행을 넣어 분리해라
    • 일련의 행 묶음은 완결된 생각 하나를 표현하라
  • 세로 밀집도
    • 연관성: 서로 밀접한 코드 행은 세로로 가까이 놓여야 한다.
  • 수직 거리
    • 서로 밀접한 개념은 세로로 가까이 둬야 한다. 
    • 변수 선언: 변수는 사용하는 위치에 최대한 가까이 선언한다.
    • 인스턴스 변수: 인스턴스 변수는 클래스 맨 처음에 선언한다.
    • 종속 함수: 한 함수가 다른 함수를 호출한다면, 두 함수는 세로로 가까이 배치한다.
    • 개념적 유사성: 개념적인 친화도가 높을수록 코드를 가까이 배치한다. (개념적 유사성: 종속 함수, 변수 선언 외에도 비슷한 동작을수행하는 일련의 함수들) 
  • 세로 순서
    • 함수 호출 종속성: 호출되는 함수를 호출하는 함수보다 나중에 배치한다.(고차원에서 저차원으로 구성)   

 

2. 가로 형식 맞추기

  • 80자 ~ 120자 행 길이가 적당해 보인다.
  • 가로 공백과 밀집도
    • 가로 공백을 통해 밀접한 개념과 느슨한 개념을 표현한다. (IDE를 사용하면 자동으로 구성해 준다.)
private void method(String line){
  int lineSize = line.length(); // = 전후로 공백을 넣음으써 할당 연산자 강조
  recordWidestLine(lineSize); // () 사이에는 공백을 넣지 않았다. (함수와 인수는 서로 밀접하기 떄문)
}

 

  • 들여 쓰기: 들여쓰기한 파일은 구조가 한눈에 들어온다.
728x90
반응형

'클린한 코드 > Clean Code' 카테고리의 다른 글

[클린 코드] 10장. 클래스  (0) 2024.03.15
[클린 코드] 9장. 단위 테스트  (0) 2024.03.14
[클린 코드] 7장. 오류처리  (0) 2024.03.13
[클린 코드] 3장. 함수  (0) 2024.03.07