리팩터링 2판 (리팩토링 개정판) - 코드 구조를 체계적으로 개선하여 효율적인 리팩터링 구현하기
마틴 파울러 지음, 개앞맵시 외 옮김 / 한빛미디어 / 2020년 4월
평점 :
장바구니담기



소개

깃헙에 널린 소스들만 찾아봐도 읽기 쉬운 코드와 읽기 어려운 코드는 쉽게 구분될 수 있을 것이다.
프로젝트 구조가 복잡하다는 것이 아니라 그냥 쉬운 코드도 어렵게 짜놓은 코드가 너무 많다는 얘기다.
물론 나도 내가 쓴 코드를 나중에 다시 보면 읽기 힘들어한다.
그래서 잘 쓰고 싶었다. 나도 읽기 쉽고 동료도 읽기 쉬운 코드.
리팩터링은 글쓰기의 퇴고와 비슷하다. (코딩에 탈고가 있는지는 모르겠다)
지금 완벽하다고 생각되는 코드도 10년 뒤에 갑자기 버그가 발생할지 모르고
특히 요즘 같이 클라우드 생태계가 커지고 MSA가 만연하는 세상에 더욱 더 불확실성이 증가했지 않을까 싶다.
그래서 테스트 코드 작성과 리팩터링은 필수 작업이다.
리팩터링과 테스트 코드가 모든 것을 해결할 수 없지만 적어도 프로그래머가 제공하는 최고의 안정성인 것 같다.

개발력이 급상승하는 필수 기술

책은 크게 세 부분으로 나눌 수 있다.
1장에서 예시를 통해 리팩터링을 빠르게 훑는다.
2장, 3장에서 원칙과 안티 패턴을 보면서 리팩터링 기준을 세운다.
나머지 부분에서 리팩터링 기법을 보며 실제로 적용해본다.


4장은 리팩터링과 더불어 테스트가 필요하다고 말한다.
테스트 주도 개발(TDD)은 RED-GREEN-REFACTOR, 즉 리팩터링이 포함되어 있는 방법론이다.

마지막 부록에서는 악취마다 어떤 리팩터링 기법을 사용할지 표 형식으로 분류를 해놓았다.


참고로 1판은 자바(Java)로 예시가 쓰인 반면 2판은 자바스크립트(Javascript)로 작성되었다.

대상 독자

1년 이상의 개발 경험을 가진 분들에게 적당하지 않을까 싶다.
아예 개발을 모르는 분이라면 무슨 말인지 이해하지 못할 수 있다.

더 읽을 거리

마틴 파울러(Martin Fowler)와 더불어 켄트 벡(Kent Beck), 스티브 맥코넬(Steve McConnell)의 책들은 중급 개발자로 나아가기 위한 필독서들이다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo