독서

Clean Code 제 5장. 형식 맞추기

autocat 2022. 3. 1. 01:05

오늘 읽은 범위 : 5장. 형식 맞추기


 책에서 기억하고 싶은 내용

타인이 내 코드를 읽을때 어수선해보인다면 그 사람은 프로젝트의 다른 측면도 똑같이 무성의하게 처리했을거라고 생각할것이다. 개발자라면 형식을 깔끔하게 맞춰 코드를 짜야한다.

 

형식을 맞추는 목적

코드 형식은 중요하다. 코드 형식 자체는 의사소통의 일환이며 개발자의 일차적 의무이다. 코딩 스타일과 가독성 수준은 유지보수와 확장성에 지대한 영향을 끼친다.

 

원활한 소통을 장려하는 코드형식

적절한 행 길이 유지

반드시 지킬 엄격한 규칙은 아니지만 바람직한 규칙으로 삼으면 좋겠다. 일반적으로 작은파일이 큰 파일보다 이해하기 쉽다. 적은 코드의 양으로도 커다란 시스템을 구축 할 수 있다.

 

신문 기사처럼 작성

잘짜여진 코드는 신문기사와 비슷하게 작성되어있다. 이름은 간단하고 명료하면서 설명이 가능하게 짓는다. 아래로 내려갈수록 의도를 세세하게 묘사하고 가장 마지막에는 저차원함수와 의도되었던 세부 내역이 마치 신문기사를 읽듯 코드를 읽을수 있을것이다.

 

개념은 빈 행으로 분리

package 라는 개념과 import 라는 개념 사이의 공백, 메서드 사이의 공백. 이 사소한 공백들이 개념을 구분해주는 역할을 한다.

 

세로 밀집도

각 개념들의 연관성을 의미한다. 서로 밀접한 코드 행은 세로로 가까이 두어 코드를 한눈에 들어오게 만들 수 있다.

 

수직 거리

같은 파일에 속할 정도로 밀접한 두 개념(메서드)는 세로 거리로 연관성을 표현한다.

  • 변수는 항상 사용하는 위치에 최대한 가깝게 선언한다. 인스턴스 변수는 클래스 맨 처음에 선언한다.
  • 잘 설계한 클래스는 많은 클래스 메서드가 인스턴스 변수를 사용한다.
  • 콜백함수 또한 세로로 가까이 두는게 가독성이 좋다.

개념적으로 친화도가 높은, 개념적으로 유사성이 있는 코드들은 수직으로 붙여서 표현해주는게 좋다.

 

세로순서

세로 순서 또한 비지니스 로직의 흐름대로 위에서 아래로 신문 기사를 읽듯이 표현하자

 

들여쓰기

우리는 scope로 이루어진 계층을 표현하기 위해 코드에 들여쓰기를 첨가한다. 코드가 속하는 범위를 시각적으로 표현하여 코드를 보다 더 빨리 읽을수 있게 됬다.

 오늘 읽은 소감

  • 신혼집 이삿날이라 너무 정신이 없어서 내일 다시 읽어봐야겠다.
  • 깨끗한 코드는 가독성이 좋아야한다. 를 5장을 읽고있는 지금 까지도 세세하게 잘라가면서 이런건 이렇게 해야하고 저런건 저렇게 해야하고 계속해서 비슷한 내용을 다른방식으로 강조하고있다.