소프트웨어 장인 정신 이야기 독서 후기를 시작 해 보겠습니다.

클린코드, 클린아키텍쳐 서적으로 유명한 로버트 마틴, 일명 밥 아저씨께서 새 책을 내셔서 한번 읽어 보았습니다.
분량은 꽤 되지만 이미 알고 있던 내용도 있고 관심 있는 부분들은 술술 읽혀서 다 읽는데는 일주일 정도 소요 되었습니다.
애자일 쪽에서 유명한 분들 마틴 파울러와 로버트 마틴의 글을 자주 접하셨던 분들은 그 분들의 애자일에 대한 생각이 바뀌어 오는 것을 지켜보던 것도 흥미로웠을겁니다.
이번에도 좀더 현대적으로 바뀐 이야기들이 새롭게 다가오는 부분이었습니다.
애자일에서도 익스트림 프로그래밍(XP) 입장에서 많은 글을 써 오던 분이었는데요 그 중에서도 원칙과 품질을 중요시하며 클린코드에 입각한 테스트 주도 프로그래밍에 대해서 많은 얘기를 하였고 이 책에서도 초반 많은 부분 심지어 절반 가까이를 테스트 주도 관련 얘기가 들어있고 충실한 예제 (JAVA) 로 되어 있어 초심자들도 보기에 편하고 테스트 주도 개발에 대한 공부용으로 쓰셔도 될듯 합니다.
이후에는 리팩터링에도 챕터를 할애하여 마틴 파울러의 리팩터링 최근에 현대적으로 바뀐 리팩터링 2판에 대해서도 소개를 해 주었습니다.
그 중에서 밥 아저씨가 뽑은
'컴퓨터가 이해할 수 있는 코드는 바보도 작성할 수 있다.
사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다.'
문구는 많은 공감을 합니다.
뒷부분에 얘기한 무자비한, 지속적인, 테스트 주도의 리팩터링의 필요성도 마음에 새겨보았습니다.
이후 개발자의 윤리에 대한 부분에 대해서도 많은 부분을 할애하며 코드의 설계에서부터 다른 개발자들과 같이 일할 것을 생각하며 혼자가 아닌 모두를 위하여 품질, 테스트 편의성, 가독성, 생산성 등을 생각하며 프로그래밍 할 것을 강조하였고
코드 작성에서 끝나는 것이 아니라 본인의 코딩이 사회에 끼치는 영향과 영향력이 큰 경우 사회의 전반적인 부분에서도 코드의 통상적 스타일을 바꿀 수 있음을 명시하며 기본적인 원칙과 윤리를 유념하라고 하고 있습니다.
사실 이 부분에서는 나에게는 직접적으로 와 닿지는 않으나 큰 오픈소스들에서 그 영향을 끼치는 부분 큰 대형 프로젝트들에서 경험했던 중구난방 이해충돌들을 생각하면 어느정도 예상은 되는 부분이었습니다.
이 책은 그렇게 개발자가 평소 생각 못했던 책임의식을 강조하다가 마지막 부분에 이르러 팀워크를 설명하며 좀더 팀 단위에서 본인의 개발 생활에 어떻게 개발할지와 말미에 배우기를 멈추지말라는 본인과 독자와에게 하는 얘기로 마무리를 짓고 있습니다.
이책은 굳이 모든 부분을 이해하고 공감하지 않아도 특정 부분에서 공감하고 본인의 개발 생활을 되돌아보며 자신의 원칙과 목표를 세울 수 있음에도 유익한 책이라 생각됩니다.
이제 사회생활과 팀 개발 생활을 시작하는 주니어에게도 앞으로 어떤 팀을 만나야 하는가 내가 주도적으로 어떤 개발 환경을 요구해야 하는가
또는 시니어나 팀이나 파트 관리 개발자 입장에서도 어떻게 내가 팀원들에게 개발 원칙을 세워줘야 하는가 같이 만들어나가는 부분은 어떤것인가를 고민할때 이 책을 한번 읽어보기를 권합니다.
그럼 20000