책/CleanCode

5장 형식 맞추기

kkkkkdddddhhhhh 2023. 12. 14. 16:34

프로그래머라면 형식을 깔끔하게 맞춰 코드를 짜야한다.

팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 그 규칙을 따라야한다.

형식을 맞추는 목적

코드 형식은 너무나도 중요하지만 또 너무 맹목적으로 따르면 안된다.

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

의사소통 은 개발자의 1차적인 의무

적절한 행 길이를 유지하라

  • Junit , Tomcat 등…

대부분의 프로그램의 Java 파일의 평균 길이(행) 은 65줄이다.

하나의 클래스에 500줄…400줄이 넘지않아도 규모가 큰 프로그램을 작성할 수 있다.

신문기사처럼 작성하라

이름은 간단하면서도 설명이 가능하게 짓자.

소스 파일 첫 부분은 고차원 개념과 알고리즘을 설명하고 아래로 내려갈수록 모듈의 의도를 자세하게 설명하자.

마지막에는 가장 저차원적인 함수와 세부 내역이 나온다.

또한 신문 기사들은 대다수 길이가 짧고 여러개의 기사들을 담고있다.

개념은 빈 행으로 분리하라

일련의 행 묶음으로 완결된 생각 하나를 표현하자.

생각 사이에는 빈 행을 넣어 분리해 보기좋은 코드를 작성하자.

  • 세로 밀집도
    • 서로 밀접한 코드는 세로로 가까이 있어야한다.
    • 변수는 변수끼리, 함수는 함수끼리
  • 수직거리
    • 함수의 연관 관계와 동작 방식으로 이해하기위해 이 함수 저 함수 오가며 소스파일을 위아래로 뺑뺑이 돌린경험을 로버트 마틴도 많이 했다고한다.
    • 서로 밀접한 개념은 가까이 둬야한다.
  • 변수는 사용하는 위치에 최대한 가까이 선언하자.
  • 인스턴스는 클래스 맨 처음에 선언하자
    • 대다수의 메서드가 해당 인스턴스를 사용하기 때문
  • 종속함수끼리도 세로 밀집도를 가깝게 하자.

가로 형식 맞추기

  • 앞서 살펴본 평군 행의 길이는 65줄이였고, 가로 줄의 길이는 평균 45줄이였다.
  • 많은 프로그래머들이 짧은 가로길이의 코드를 선호한다.
  • 들여쓰기
    • 시각적으로 코드의 Scope를 표현하기위해
    • 또한 소스 코드의 구조가 한눈에 들어오기 좋다.

팀 규칙

  • 프로그래머들 각자 선호하는 규칙이 있다.
  • 하지만 팀에 속한다면 해당 팀이 지키는 규칙에따라 코드를 작성하자.
    • 그래야 일관적인 소프트웨어가 완성된다.
  • 어디에 괄호를 넣을지, 들여쓰기는 몇자리로 할지, 클래스와 변수, 메서드 이름은 어떻게 지을지….

실제로 로버트 마틴이 작성한 코드가 마지막에 실려있는데

메서드의 코드 행길이가 평균적으로 10줄이 넘지않는다

' > CleanCode' 카테고리의 다른 글

7장 오류처리  (0) 2023.12.31
6장 객체와 자료 구조  (0) 2023.12.16
4장 주석  (0) 2023.12.11
3장 함수  (0) 2023.12.08
1장 깨끗한 코드 , 2장 의미 있는 이름  (0) 2023.12.07