변화를 미리 생각하고 대처할 수 있는 프로그래밍 기법!
가끔 리팩토링과 같은 책을 읽으면서 ‘이미 다 알고 있는 내용인데?’라고 생각하는 개발자들을 만나게 된다. 맞다. 리팩토링은 무(蕪)에서 유(有)를 창조해내는 작업이 아니다. 이미 수많은 개발자들이 늘 해오던 작업을 눈에 보이도록 구체화해 정리한 것이다. 우리가 어떠한 행동을 의식적으로 하는 것과 무의식적으로 하는 것에는 많은 차이가 난다. 프리팩토링 역시 비슷한 맥락으로 이해할 수 있다. 프리팩토링은 수많은 개발자들이 늘 해오던 작업(지침)을 이해하기 쉽게 정리한 책이다. 만약 여러분이 전문 개발자라면 새로운 내용을 배우기보다는 자신이 해오던 일들을 다시 한번 정리해보는 기회가 될 것이다. 만약 초보 개발자라면 상황에 따라 어떤 지침들을 적용해야 하는지를 배울 수 있을 것이다.
켄의 지침을 여러분이 진행하는 소프트웨어 프로젝트에 적용하면 좀더 읽기 수월하고 유지 보수하기 쉬운 프로그램을 만들 수 있을 것이다. 또한 나중에 수행될 리팩토링 작업의 양을 줄일 수 있는 사항들을 미리 결정하는 데 도움을 줄 것이다. 변화를 미리 생각하고 대처할 수 있다면, 즉 코드를 프리팩토링 한다면, 생산성이 향상될 것이다.
[주요 내용]
- 추상화를 하려면 끝까지 추상화하라
- 고객의 언어를 사용하라
- 결합된 것을 분할하는 것보다 분할된 것을 결합하기가 더 쉽다
- 찬 공기가 들어오지 못하도록 하라
- 크게 계획하고 지역적으로 개발하라
- 꿀 먹은 벙어리가 되지 마라
- 코드로 의사소통을 하라
- 목적지를 알기 전에는 속력을 내지 마라
- 디버깅하기 가장 쉬운 코드는 작성되지 않은 코드다
[이 책의 특징과 장점]
- 이 책은 65가지에 이르는 프리팩토링 지침들을 부록 A에서 카테고리별로, 가나다순으로 일목요연하게 정리를 해놓아서 본문에서 해당 지침들을 쉽게 찾을 수 있도록 배려하였다. 독자는 프리팩토링 지침들을 쉽게 확인할 수 있고, 본서의 내용을 빠르게 되새김할 수 있다.
- 다른 누군가의 패턴이 다른 사람에게는 설계 지침이 된다. 이 책의 지침과 독자들이 가지고 있는 지침을 비교해봄으로써 독자들의 패러다임이 갖는 장단점을 이해하는 데 도움을 준다.
|