Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
[CleanCode] 5장. 형식 맞추기
#clean_code
2년 전
771

오늘 TIL 3줄 요약

  • 코드 형식은 의사소통의 일환이다.

  • 신문 기사처럼 작성하라.

  • 팀에 속한다면 자신이 선호해야 할 규칙은 바로 팀 규칙이다.

TIL (Today I Learned) 날짜

2022. 05. 02

오늘 읽은 범위

5장. 형식 맞추기

책에서 기억하고 싶은 내용을 써보세요.

  • 신문 기사처럼 작성하라. 독자는 위에서 아래로 기사를 읽는다. 최상단에 기사를 몇 마디로 요약하는 표제가 나온다. 소스 파일도 신문 기사와 비슷하게 작성한다. 이름은 간단하면서도 설명이 간으하게 짓는다. 소스파일 첫 부분은 고차원 개념과 알고리즘을 설명한다. 아래로 내려갈수록 의도를 세세학세 묘사한다. 마지막에는 가장 저차원 함수와 세부 내역이 나온다.

  • 개념은 빈 행으로 분리하라. 코드는 왼쪽에서 오른쪽으로 그리고 위에서 아래로 읽힌다. 각 행은 수식이나 절을 나타내고, 일련의 행 묶음은 완결된 생각 하나를 표현한다. 생각 사이는 빈 행을 넣어 분리해야 마땅하다.

  • 줄바꿈이 개념을 분리한다면 세로 밀집도는 연관성을 의미한다.

  • 서로 밀접한 개념은 세로로 가까이 둬야한다. 물론 두 개념이 서로 다른 파일에 속한다면 규칙이 통하지 않는다.

  • 변수는 사용하는 위치에 최대한 가까이 선언한다. 반면, 인스턴스 변수는 클래스 맨 처음에 선언한다.

  • 한 함수가 다른 함수를 호출한다면 두 함수는 세로로 가까이 배치한다. 또한 가능하다면 호출하는 함수를 호출되는 함수보다 먼저 배치한다.

  • 일반적으로 함수 호출 종속성은 아래 방향으로 유지한다. 그러면 소스 코드 모듈이 고차원에서 자차원으로 자연스럽게 내려간다.

  • 가로로는 공백을 사용해 밀접한 개념과 느슨한 개념을 표현한다.

  • 팀은 한 가지 규칙에 합의해야 한다. 그리고 모든 팀원은 그 규칙을 따라야 한다. 개개인이 따로 국밥처럼 맘대로 짜대는 코드는 피해야 한다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 기본적인 형식에 대한 설명이 좋았다. 의례 작성하던 것에 대해 왜 이렇게 작성하면 좋은지 이해하고, 중요성을 되짚어 볼 수 있었고, 함수 챕터에서 함수 작성 시 추상화 단계를 고차원에서 저차원으로 작성하라고 했었는데, 형식에서 세로 순서로 설명해주는 것도 좋았다.