Clean Code
지은이 : 로버트 C. 마틴
옮긴이 : 박재호, 이해영
출판사 : 인사이트
출처 : 인사이트 블로그
오늘 소개할 도서는자신의 코드에 관심이 있는 자바 개발자라면 한 번 쯤 들어봤을 책인 클린 코드이다.
저자는 깨끗한 코드에 대해 이렇게 표현하고 있다.
여러분이 읽었던 책 중 진짜로 재밌게 읽었던 책, 또는 좋았던 책을 떠올렸을 때 책을 읽는 동안 이미지가 떠오르고 마치 한 편의 영화를 보는 듯한 기분이 들지 않았는가? 깨끗한 코드도 좋은 소설처럼 잘 읽혀야 한다
이처럼 저자는 가독성을 특히나 좋아한다. 그래서 그런지 이 책 역시 가독성이 매우 좋다.
필자도 꽤나 많은 기술서적을 읽어 보았으나 기술을 전달하는 기술 서적인데도 불구하고 이렇게 잘 읽히는 책은 많지 않았다. 좋은 소설처럼 집필한 책을 읽고 좋은 소설처럼 코드를 작성하는 기술을 배울 수 있다면 꼭 읽어봐야 할 도서가 아닌가
필자는 이 책이 객체 지향 프로그래밍에서 코드 작성의 기술적인 부분, 기초적인 부분을 향상 시켜 줄 수 있다고 생각된다.
그렇기에 아직 본인의 코드에 자신이 없는 개발자들에게 강력 추천하는 도서이다.
다만, 기본에 충실한 나머지 너무 고지식하다고 보이는 부분도 있다. 하지만 저자 역시 이를 인정하고 있고 다양한 기술들을 소개하는 책이기에 본인이게 필요한 내용을 습득하는 것은 온전히 독자에게 달려있다고 설명하고 있다.
이제 필자가 이 책을 읽으며 감명받았던 주옥같은 글귀들과 함께 이번 포스팅을 마무리하겠다.
1장. 깨끗한 코드
첫 장에선 깨끗한 코드란 무엇인가를 정의하기 위해 다양한 개발자들의 의견을 설명해주고 있다.
코드를 짤때는 자신이 저자라는 사실을, 여러분의 노력을 보고 판단을 내릴 독자가 있다는 사실을 기억하기 바란다.
- 『클린 코드』 '깨끗한 코드' 中
2장. 의미있는 이름
두 번째 장에선 많은 개발자들이 힘들어하는 작명에 대해 다양한 기술을 소개하고 있다.
코드를 읽으면서 짐작했던 기능을 각 루틴이 그대로 수행한다면 깨끗한 코드라 불러도 되겠다.
- 『클린 코드』 '의미있는 이름' 中
3장. 함수
필자가 배운 점이 많은 챕터이기도 하다. 와닿는 내용들이 너무 많았던 챕터이다.
좋은 코드는 한 번에 나오지 않고 지속적인 노력과 반복, 리팩터링을 통해 나온다.
. 함수의 소프트웨어를 짜는 행위는 여느 글짓기와 비슷하다.
- 『클린 코드』 '함수' 中
4장. 주석
개발자에게 주석은 꼭 필요하다. 주석을 안 달아서 혼난 적은 있어도 주석을 달아서 혼난 적은 없을것이다.
이번 챕터는 그 주석에 대해 설명하고 있다.
부정확한 주석은 아예 없는 주석보다 훨씬 더 나쁘다.
- 『클린 코드』 '주석' 中
5장. 형식 맞추기
보통 개발자는 함수를 잘 짜기 위해서 코딩테스트, 알고리즘에 집중하기 마련이다.
하지만 이 책은 함수를 잘 짜는게 끝이 아니라고 하고 있다. 함수의 내용도 중요하지만 그 내용을 글로 표현하는 방법도 중요하다고 설명하고 있다.
신문 기사처럼 작성하라
소스 파일 첫 부분은 고차원 개념과 알고리즘을 설명한다. 아래로 내려갈수록 의도를 세세하게 묘사한다.
마지막에는 가장 저차원 함수와 세부 내역이 나온다.
- 『클린 코드』 '형식 맞추기' 中
6장. 객체와 자료 구조
반복을 줄이기 위해 객체 지향 코드를 작성하다 보면 함수를 하나 추가 했을 때 변경 작업을 해줘야 하는 부분이 많이 발생하는 것을 겪어본 적이 있을 것이다. 해당 챕터는 그런 경험을 토대로 객체와 자료 구조에 관계에 대해 설명하고 있다.
객체 지향 코드에서 어려운 변경은 절차적인 코드에서 쉬우며, 절차적인 코드에서 어려운 변경은 객체 지향 코드에서 쉽다.
- 『클린 코드』 '객체와 자료 구조' 中
7장. 오류 처리
필자도 아직 오류 처리 스킬이 능숙하지 못하기에 심도있게 읽었던 챕터이다.
오류 처리는 분명 많은 주니어 개발자에게 도움이 될 것이라고 생각한다.
오류 처리는 중요하다.
하지만 오류 처리 코드로 인해 프로그램 논리를이해하기 어려워진다면
깨끗한 코드라 부르기 어렵다.
- 『클린 코드』 '오류 처리' 中
이외에도 읽으면서 무릎을 탁! 치는 내용들이 정말 많았지만 여러분도 필자와 같은 감정을 느껴볼 수 있도록 최대한 간략하게 추려보았다. 더 많은 내용이 궁금하다면 책을 읽어보길 바란다.
'book' 카테고리의 다른 글
[Book] 도서 리뷰 - Java EE 디자인 패턴 (0) | 2022.07.18 |
---|