Java言語で学ぶリファクタリング入門 [結城浩 著]の書評です。
結論から言うと、マーチン・ファウラーの『リファクタリング』を補完し理解を深めるための秀逸な一冊。
■ 良い点
・ サンプルコードが質と量において適切
・ サンプルコードの省略がなく全部が掲載されている
・ 適用前と適用後のコードが掲載されている
・ 構成がしっかりしていて無駄がない
・ 説明が丁寧で文章が読みやすい
・ 図表が理解を深める
・ 付録にリファクタリングの一覧あり
■ 悪い点
・ 特に無い。あえて言えば出版年が少し古い。
■ 総評
マーチン・ファウラーの『リファクタリング』を読んだら、次に是非とも読みたい一冊です。リファクタリングの理解が深まります。
形式的には、小さなリファクタリングから、大きなものへと一つずつ章が続き、全部で15章で構成されます。つまり、15のリファクタリングを学習するのですが、それに併せて他のリファクタリングにも触れるので、結局、30から40個くらいを学習することになると思います。
各章においては、リファクタリングを適用する前の悪いコード(臭いのあるコード)を紹介し、問題点を指摘し、リファクタリングを実行し、実行後のコードを省略なく掲載しているので、とても理解が進みます。結城氏ならではの要点を押さえた解説もありがたいです。各章の最後には、練習問題もあり、こちらも取り組むと実力がつきます。
内容的には、適度に深いものになっており、易しすぎず難しすぎず丁度良いあんばいになっていると思います。なお、前提として、デザインパターンやユニットテスト等の知識が必要とされます。一応、JUnitの解説が付録にあります。また、付録には、リファクタリングの一覧があるので、随時、目を通すとプログラミングの際のヒントになりそうです。
本書を読了すれば、プログラミングの実力UPが実感できると思います。