클린코드

4장-6장

달팽이포뇨 2022. 4. 6. 22:59

4장 주석

 

이 책의 저자는 주석을 달지 않는 방향으로 유도하는 주석이 좋은 주석이라고 한다.

이 내용을 처음 보았을 때 사실 '이게 무슨 말이지?'라고 생각했다.

주석을 달지 않기 위한 주석이라니... 어떻게 보면 굉장히 모순적이지 않은가

1~3장에서 보았듯이 이 책의 저자는 변수명, 함수명 등 코드 자체적으로 이것이 어떤 의미를 담고있는지 직관적으로 나타나게 해야한다고 했었다. 이것의 연장선으로 코드가 분명하여 주석이 필요없을 정도가 되어야한다는 뜻인 것 같다.

 

이 책에서 말하는 좋은 주석과 나쁜 주석에 대해 간단히 요약을 해보자.

좋은 주석

- 법적인 주석 - ex. 저작권 정보, 소유권 정보 등

- 정보를 제공하는 주석 - 그래도 가능하다면 함수 이름에 정보를 담는 편이 좋음.

- 의도를 설명하는 주석 - 저자의 의도를 분명하게 드러나게 작성

- 결과를 경고하는 주석 - 다른 프로그래머에게 결과를 경고할 목적으로 주석 작성

- 앞으로 할 일에 대한 주석 - //TODO 주석 - 주기적으로 점검하여 없애도 괜찮은 주석은 지우는 것을 권장

- 중요성을 강조하는 주석 - 대수롭지 않다고 여겨질 뭔가의 중요성 강조

- 공개 API에서 Javadocs

 

나쁜 주석 - 대다수의 주석

- 주절거리는 주석, 같은 이야기를 중복하는 주석, 오해할 여지가 있는 주석, 의무적으로 다는 주석, 이력을 기록하는 주석, 있으나 마나 한 주석, 위치를 표시하는 주석, 닫는 괄호에 다는 주석, 공로를 돌리거나 저자를 표시하는 주석, 주석으로 처리하는 코드 등등

 

이 장을 읽고 내가 주석을 쓸 데 없이 주석을 너무 많이 쓰고 있었나하고 돌아보게 되었다. 그리고 앞으로 변수 및 함수의 이름을 분명하게 써서 주석을 달지 않아도 이해가 되도록 써야겠다는 결심을 하였다.

 

 

5장 형식 맞추기

 

일정한 형식을 유지하는 것이 정말 코드가 깔끔해보이는 요소 중에 하나인 것 같다는 생각이 든다. 즉, 통일성이 생기는 것과 같은 의미이기 때문이다.

 

형식을 맞출 때의 규칙

- 적절한 행 길이를 유지하라 - 200줄의 파일로도 커다란 시스템을 구축할 수 있고, 일반적으로 큰 파일보다 작은 파일이 이해하기 쉽다.

- 신문 기사처럼 작성하라 - 이름은 간단하면서도 설명이 가능하게 - 첫 부분은 고차원 개념과 알고리즘 설명, 아래로 내려갈수록 의도를 세세하게 묘사, 마지막에는 가장 저차원 함수와 세부 내역 기술

- 개념은 빈 행으로 분리하라 - 코드 가독성 향상

- 수직 거리 - 연관있는 코드일수록 가까운 위치에 작성

- 가로 공백과 밀집도

- 가로 정렬

- 들여쓰기

 

세로 형식(ㅣ)뿐만 아니라 가로 형식(ㅡ)도 중요하다!

 

6장 객체와 자료 구조

 

중요한 것은 구현을 외부로 노출하지 말아라! 이다. 

객체는 동작을 공개하고 자료를 숨기지만 자료구조는 자료를 노출한다.

private과 public 잘 쓰기.. 더 노력해봐야할 것 같다..

 

 

'클린코드' 카테고리의 다른 글

15장~16장  (0) 2022.06.30
14장  (0) 2022.06.30
11장~13장  (0) 2022.06.27
7장~10장  (0) 2022.06.02
1주차 1장~3장  (0) 2022.03.30