한빛미디어의 '나는 리뷰어다' 5월 서평단으로 '켄트 벡의 Tidy First?' 라는 책을 선택하여 종이책으로 받아 읽게 되었다.
개발자라면 한 번쯤은 들어봤을 이름이고, 안그래도 출판 소식을 듣고 구매해서 읽어보려고 고민하고 있던 책이었는데, 5월 서평단 책 리스트에 있어서 냉큼 선택했다.
책 이름에서부터 Tidy라는 단어가 눈에 띄게 보인다.
영어를 잘 알지 못하는 나는 처음에는 어떤 특정 단어의 줄임표현이라고 생각했다.
사전에 검색을 해보니, '정리'라는 뜻을 가진 단어였고, 실제로 이 책은 코드에 대한 '정리'를 다루는 책이다.
글 제목부터 설레는 책. 분량이 많지도 않아 가볍게 읽기 좋았다.
https://www.hanbit.co.kr/store/books/look.php?p_code=B1474193984
개발을 접했던 사람이라면, 한 번쯤은 코드를 갈아 엎고 싶다는 생각을 해봤을 것 같다.
하지만... 현실은... 계속해서 들어오는 업무, 너무도 많은 수정이 필요한 작업, 귀찮음 등 리팩토링을 진행하는 일 자체가 쉽지 않다.
특히, 업으로 개발을 하는 입장에서는 사실상 리팩토링은 회사 입장에서 돈이 되지 않는다.
(그 시간에 기능 하나 개발해서 파는게 이득이라고 생각 할 것이다.)
이 책은 비즈니스 관점의 생각까지 고려했다! 라는 것은 솔직히 잘 모르겠지만... 개발자가 리팩토링의 초석을 다지기 위한 방법의 그 첫번째를 소개하고 있다.
'코드 정리' 단어만 보면 참 쉽다.
하지만, 막상 시도해보면 생각보다 쉬운 작업이 아니라는 것을 알 수 있다.
특히, 어디까지 해야 할 지, 얼마나 해야 할 지, 이게 도움이 될 지 알기가 어렵다.
이 책에서 결론적으로 아래 수식을 검토하여 코드 정리를 하라고 한다.
비용 (코드 정리) + 비용 (코드 정리 후 동작 변경) < 비용 (바로 동작 변경) |
이 경우 생각의 가치도 없이 무조건 코드 정리를 먼저 하라고 한다.
비용 (코드 정리) + 비용 (코드 정리 후 동작 변경) > 비용 (바로 동작 변경) |
문제되는 건 이 경우인데, 결국 이 때는 선택을 해야 한다.
선택은 결국 개발자의 몫이라는 것...
대신, 작은 시간을 들일 수 있는 작업부터 작게 시작하기를 권한다.
개발을 조금 해봤던 사람이라면, 이 책을 처음 읽었을 때 '생각보다 별 내용이 없다'고 느낄 수도 있다.
어쩌면 당연하다고 생각한다.
개인적인 생각으로 '진짜 개발을 해본 사람'들이라면, 코드 정리에 대한 개념은 비슷할 거라고 생각했다.
하지만, 그 첫번째 단추가 얼마나 중요한 내용인지는 알거라고 생각한다.
이 책은 아직 더 많은 시리즈가 준비되어 있지만, 그 시작으로 첫번째 단추인 '코드 정리'를 강조했다는 것은, 정리가 되지 않으면 그 이후의 어떤 것도 시작할 수 없다는 내용을 담고 있기도 하기 때문이다.
나 역시 나름 개발을 조금 해왔기 때문에 내용 자체는 특별하지는 않았다. 다만, 알던 내용의 복습과, 다시 한번 다짐할 수 있는 계기가 됐다.
요즘들어, 코드를 고친다는 것에 보수적으로 접근하고 있었는데, 조금 더 자신있게 바꿔도 될 것 같다는 용기를 얻은 책이었다.
오히려 옮긴이 노트가 굉장히 흥미로웠다. 번역을 하기 위해 켄트 벡과 나눈 소통이야기나, 옮긴이가 생각하는 개발 철학 내용도 재밌었다.
만약 책을 본다면, 옮긴이 노트까지 꼭 읽어보는 것을 추천하고 싶다.
개발자라면, 개인적으로 꼭 읽으면 좋겠다고 생각하는 책이다.
아직 남은 시리즈도 읽기 위한 초석이기도 하니깐...
<한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.>
'리뷰' 카테고리의 다른 글
[책 리뷰] AI 트루스 (3) | 2024.09.27 |
---|---|
[책 리뷰] 네트워크 인프라 자동화 (0) | 2024.08.25 |
[책 리뷰] 실무로 통하는 타입스크립트 (1) | 2024.07.28 |
[책 리뷰] 혼자 공부하는 얄팍한 코딩지식 (0) | 2024.06.24 |
[책 리뷰] 도시를 만드는 기술 이야기 (1) | 2024.04.26 |