주석
저자는 주석에 매우 부정적인 입장이다.
그 이유는
1. 주석은 (코드가 계속 변경되며) 최신 내용이 갱신되지 않을수도 있다.
2. 나쁜 코드를 설명하는 역할을 한다.
3. 주관적 의미를 써놓으면 이해하기가 어렵다
주석을 쓰기보다는 명확한 함수, 변수명으로 코드를 표현하기를 원하는것 같다.
다만 다음 방식으로는 사용을 추천한다.
1. 주의사항
2. 법적인 주석(copyright ~~)
3. 기본적 정보 제공
ex)
// kk : mm : ss 형식
const timeMatcher = /\d\d:\d\d:\d\d\.exec('문자열 아무거나...');
4. 의미를 명료하게 밝히는 주석
5. TODO 주석 (다른 프로그래머에게 할일을 알려주는 주석)
다만 TODO 주석의 경우 사용할경우 경험상 아무도 맡지 않아서 혼자 미아가.. 되버리는 경우도 있었기 때문에 팀원과 소통을 잘해야한다.
결론 :
주석을 달아야한다는 의무감에 빠져서 의미없는 주석을 생산하지 말자.
나도 변수, 함수명으로 내가 하는 목적을 설명하고자 노력하고 있다.
프론트엔드는 특히 주석 === 코드 용량이라 쓰지 말라는 이야기가 있기도..?(minify javascript를 쓰면 되긴한다.)
형식 맞추기
'돌아가는 코드' 보다는 코드의 품질을 높이자
팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 따라야 한다.
가능하면 팀 모두가 도구 사용 -> prettier, esLint?
좋은 코드를 만드는법
1. 잘게 쪼개자
2. 신문 기사처럼 작성(위에서 아래로 볼 수 있게 작성)
3. 개념은 빈 행으로 분리 (너무 코드를 빽빽하게 적지 말자), 같은 개념은 가깝게
4. 변수는 각 함수 맨 처음에 선언
tmi인데 react에서 useState, hook 등도 항상 최상위에 선언한다.
그 이유는 가독성 장점도 있지만 코드의 흐름이 항상 일관되게 진행될 수 있도록 보장하기 위해서이다.
그리고 react 는 state를 일종의 배열 형태로 관리하고 순서는 보장하기 않기 때문에 항상 선언 순서는 보장되야 한다.
5. 인스턴스 변수는 함수 맨 처음에 선언(private 변수 등?)
이유는 2번 참고
6. 함수가 다른 함수를 호출하면 가까이 배치, 호출 하는 함수는 호출 되는 함수보다 앞에
이유는 2번 참고
7. 유사한 코드(개념적 친화도가 유사한 코드)는 비슷한 곳에 배치
8. 들여쓰기 기준 통일
9. 팀 규칙 정하기 (가장 중요)
초기에 시간이 많이 걸려도 규칙은 확실히 정하고 팀원 모두 인지하는게 중요한거 같다.
읽은 후기 :
사소하지만 중요한 파트라고 생각된다.
특히 팀 규칙 정하는게 정말 중요하다..
팀원 전부의 코드 스타일이 다를 수 있기 때문에(경험상 팀플할때마다 모든 사람이 전부 다 달랐음) 규칙은 반드시 정해야한다.
요즘은 prettier, esLint같은 좋은 도구들이 많이 생겼으니 애용해 보자.
'독서 > cleancode' 카테고리의 다른 글
cleancode - unit test (0) | 2022.01.25 |
---|---|
clean code - 경계 (0) | 2022.01.24 |
cleancode - 오류처리 (0) | 2022.01.22 |
cleancode - 객체와 자료구조 (0) | 2022.01.21 |
clean code - 함수 (0) | 2022.01.19 |