클린 코더 & 클린 코드
클린코더... 5개월 전쯤에 아는 개발자 형님따라 교보문고 갔다가 얼떨결에 선물 받은 책이다.
그 전까지는 항상 서점에 목좋은 곳에 비치되어 있어서 유명한 건 알았지만, 목차가 지루해 보여서 포기하기 일쑤였다.
그런데 그 형님이 추천하면서 또 사준다고 하니 이게 웬 떡! 덥석 물었다.
혼란스러운 제목
밥 아저씨의 저서로 클린 코드
와 클린 코더
가 있다.
적어도 내가 아는 개발자들은 이런 제목에 혼란스러워했다.
심지어 나는 개정판이 나오면서 제목 실수 한 줄 알았다.
사실 표지 디자인도 너무 달라서 저자도 다른 사람인 줄 알았을 정도이다. 마치 농심 육개장과 삼양 육개장을 보는듯한...
(지금 글을 작성하면서 발견했는데 두 책이 출판사가 다르다)
클린 코더
는 프로그래밍 코드보다는 시니어 개발자로써의 혹은 시니어 개발자가 되기위한 행동을 기술한다.
반면 클린 코드
의 경우 좀 더 직접적으로 코드에 대한 가이드가 나온다.
위와 같은 차이 때문에 클린 코더
가 좀더 읽기는 재미있다.
밥 아저씨의 실제 경험에 기반을 둔 스토리 텔링이기 때문일까? 그렇다고 클린 코드
가 딱딱하고 재미없다는 이야기가 아니다.
클린 코더
를 감명깊게 본 나머지 결국 클린 코드
까지 보게 된다.
밥 아저씨?
밥 아저씨라 함은 일반인에게는 화가 밥 로스가 더 친숙할 것이다.
하지만 여기서는 로버트 마틴을 가르킨다. 혹자들은 로버트 마틴옹이라고도 한다 :)
로버트 마틴은 1970년부터 이 업계에 종사해온 베테랑이다.
이후 오브젝트 멘토사를 창립하며 풍부한 경험을 바탕으로 컨설팅을 하게 된다.
클린 코더가 다루는 내용
■ 진정한 소프트웨어 장인으로 행동(behave)하는 일이 가지는 의미 ■ 충돌, 빡빡한 일정, 비이성적인 관리자를 다루는 방법 ■ 코딩에 몰입하고, 막혔을 때 빠져나오는 방법 ■ 끊임없는 압박을 다루고 녹초가 되는 상황을 피하는 방법 ■ 새로운 개발 패러다임에서도 기존 태도를 지켜내는 방법 ■ 시간을 관리하고 막다른 길이나 늪, 진창, 수렁을 피하는 방법 ■ 프로그래머와 팀이 번창하는 환경을 조성하는 방법 ■ '아니요'라고 말하는 때와 말하는 방법 ■ '네'라고 말하는 때와 '네'의 진정한 의미
클린 코드가 다루는 내용
■ 1장 깨끗한 코드 ■ 2장 의미 있는 이름 ■ 3장 함수 ■ 4장 주석 ■ 5장 형식 맞추기 ■ 6장 객체와 자료 구조 ■ 7장 오류 처리 ■ 8장 경계 ■ 9장 단위 테스트 ■ 10장 클래스 ■ 11장 시스템 ■ 12장 창발성 ■ 13장 동시성 ■ 14장 점진적인 개선 ■ 15장 JUnit 들여다보기 ■ 16장 SerialDate 리팩터링
마치며
클린 코더
의 경우 스토리텔링이 더 많기 때문에 재밌게 읽을 수 있다.
개발자로써의 행동과 태도에 촛점이 맞춰져 있다.
반면 클린 코드
의 경우 좀더 코드에 관련된 내용으로 구성되어 있으며, 내가 지금까지 작성한 코드나 습관들이 오버랩되면서 반성의 시간을 가질 수 있다.
개발의 장인이 되고 싶어 하는 개발자라면 꼭 한번 보기를 권장한다.