코드를 다른 사람들이 읽기 쉽게 작성하고 싶다는 생각에 고른 책. 이제 막 프로그래밍을 시작했다면 굳이 권하고 싶지는 않다. 어느정도 배운 후에, 뭐가 좋은 코드일까 라는 의구심이 든다면 어서 이 책을 집어라.
이렇게 저렇게 코드를 작성하는게 좋다는 식의 글은 이미 구글링 몇번 하면 나오기는 하겠지만, 파편적으로 흩어진 지식 말고 한번에 정리된 내용을 읽고 싶어서 이 책을 집어들었다.
이 책은 크게 4 part로 구성되어 있다.
- 표면적인 수준에서의 개선
- 루프와 논리를 단순화하기
- 코드를 재작성하기
- 선택된 주제들
아직 다 읽은 건 아니지만 읽은 부분이라도 내용을 정리해야 머리에 남을 것 같아 끄적여본다.
코드는 이해하기 쉬워야 한다.
전적으로 동감한다. 결국 코드는 프로그래밍 '언어'이다. '언어'는 소통을 위해 필요한 것이고, 소통이 대상이 컴퓨터가 되든, 사람이 되든 이해하기 쉬워야 한다. 이해못했으면 하는 의도를 가지고 작성한 코드가 아닌 이상, 읽다보면 코드를 작성한 사람이 어떤 의도를 가지고 코드를 짰는지 읽히는 코드가 공부하기도 좋고 활용하기도 좋다.
이 책에서는 무엇이 코드를 '더 좋게' 만드는지에 대한 답으로 '가독성의 기본정리'를 내놓는다.
코드는 다른 사람이 그것을 이해하는 데 들이는 시간을 최소화하는 방식으로 작성되어야 한다.
이 책을 구성하는 가장 핵심 문구라는 생각이 든다. 여기서 다른 사람이라함은 '현재 코드를 작성하는 나' 이외의 이 코드를 볼 모든 사람이다. '미래의 나'도 예외는 아니다.
지금 생각하는 기능을 구현하기위해 완벽히 돌아가는 개쩌는 코드를 짰다고 해도, 나중에 유지보수를 하거나 문서화 작업 등 결국은 그 코드를 다시 봐야할 일이 생기기 마련이다. 전설처럼 들리는 우스갯소리로 '이 코드 누가 이렇게 개떡처럼 짠거야' 하고 알아보면 자기가 작성한 코드였다는 이야기도 있듯, 미래의 나를 위해서라도 가독성을 신경쓰는 것은 중요하다.
짧은 코드는 항상 좋은가?
글쎄... 나는 아니라고 본다. 책 저자도 나와 생각이 같다. 사람과 대화할때도 간단하다고 항상 좋은 대화가 아니다.
간단 명료해야 서로 무슨 말을 하는지 이해하지. 개인적으로는 짧은 코드보다는 잘 읽히는 코드가 좋고, 그 잘읽히는 코드가 짧으면 더 좋다.
내 우선순위는 가독성이 좋은 코드가 우선이고, 그 다음이 짧은 코드다.
뭐 여기까지가 이 책의 서론이자 내가 서론만 읽고 이 책을 사야겠다고 마음 먹은 이유다.
Part1. 표면적 수준에서의 개선
- 이름에 정보 담기
- 오해할 수 없는 이름들
- 미학
- 주석에 담아야 하는 대상
- 명확하고 간결한 주석 달기
첫번째 파트에서는 표면적 수준에서의 개선을 다루고 있다. 함수명이나 변수명을 어떻게 짓는게 좋은지, 주석은 어떻게 작성해야하는지 등에 대한 내용이다. 자세한건 책을 직접 사서 읽어보기를 권한다.
핵심이 되는 내용만 정리해보자면(책에는 이렇게 안적혀 있을 수도 있다. 그냥 내가 멋대로 정리한 내용이니까 아닐 수도 있다.)...
- 다른 사람이 읽어도 같은 의미로 해석 될 수 있는 네이밍을 할 것
- 프로그래머들 사이에 암묵적으로 지켜지고 있는 포맷팅을 신경써서 작성할 것
- 주석은 꼭 필요한 곳에 명확하고 간결하게 작성해 둘 것
이 정도 쯤이려나.. 이정도만 머리속에 담아두고, 세부 실천 사항은 그때그때 책을 보며 하나씩 해보지 뭐.
'프로그래밍' 카테고리의 다른 글
[리뷰] 읽기 좋은 코드가 좋은 코드다 - Part 2~4. (0) | 2021.12.01 |
---|---|
[프로그래밍 공부법] 구글링 (3) | 2021.11.12 |
[프로그래밍 공부법] 프로그래밍 실력을 올려주는 3가지 공부법 (2) | 2021.11.02 |
[프로그래밍 공부법] 프로그래밍을 공부하는 방법 (2) | 2021.11.01 |
프로그래밍 공부 - 무엇으로해야하는가? (0) | 2021.10.02 |
댓글