*

お勧め本紹介[新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)]

公開日: : 最終更新日:2015/05/01 Java, お勧め本


スポンサードリンク



リファクタリング―プログラムの体質改善テクニック (Object Technology Series)の新装版が最近発売されました。

発売された背景

英国ピアソングループの技術書を国内で出版していたピアソン桐原は、ピアソングループから離脱し2013年8月1日付けで「桐原書店」として再スタートを切りました。

この影響で「リファクタリング―プログラムの体質改善テクニック (Object Technology Series)は結果的に絶版となっていました。
[amazonjs asin=”4894712288″ locale=”JP” title=”リファクタリング―プログラムの体質改善テクニック (Object Technology Series)”]

不朽の名作である本書が世の中から無くなってしまうことを憂いた、訳者たちの尽力で今回の新装版の発売に繋がりました。

「新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)」
[amazonjs asin=”427405019X” locale=”JP” title=”新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)”]

読んでみた感想

全体的な内容は旧版と同じですが、旧版の訳者による丁寧な見直しが新装版にも反映されています。
本書に含まれるコードはJava1、Java2対応の物で旧版とほとんど変更されていませんが、新装版には旧版にない
付録があります。これが新装版の目玉だと言えます。

付録「 Java のバージョンアップに伴うリファクタリングをめぐる環境の変化」です。
旧版出版以降のJavaとそのテスティングフレームワークであるJUnitの進歩の記載があります。
対象となるJavaは7までとなっています。

Javaとそのテスティングフレームワークの進歩の記載の後に、その進歩を反映して、
本書に含まれるコードを再リファクタリングしています。ダウンキャスト問題やジェネリック等が取り扱われています。

本書が全面的にJava7に対応されていないことについては不満は残りますが、
そんな大きな変更を行ってしまうと、せっかくの本書のバランスが崩れてしまう可能性があると言えますので、
付録によるフォローに留めたことが結果的には良かったとも思います。

また今後は、Oracleは今までと違ってJavaの言語仕様の強化に注力して行くことが見えていますし
既にJava8でかなりの変更があったといえ、そんな物を追いかけ続けることは現実劇に不可能ですので、
付録の再リファクタリングで十分に新装版の意味はあると考えます。

総合評価

「読んでみた感想」で記載させていただいた通り、旧版の良さをそのまま引き継いで、比較的新しめのJava7
の機能を利用したリファクタリング方法を付録として追加している本書は「Javaプログラマー」であれば
絶対に読んでおくべき物と言えます。

値段は少し高いですが、間違いなく読んだ人の血となり肉となると確信します。

Javaだけでなく、文法や記述方法が良く似ている「C#プログラマー」にもオススメできます。
星は5つとさせていただきます。

「新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)」
[amazonjs asin=”427405019X” locale=”JP” title=”新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)”]


スポンサードリンク



関連記事

Eclipseのインストールと日本語化とJDK8(Java8)対応[Eclipse4.4とEclipse4.3]

インストールするEclipseのバージョンですが、とりあえず4.3をターゲットとしておき、 4.4

記事を読む

JUnit入門その6[Eclipse4.4のJUnitプラグインとDBUnitの併用(便利に利用するためのユーティリティの作成)]

JUnit入門その4 でDBUnitの環境構築を説明させていただきました。 今回は、前提値デ

記事を読む

Eclipse(4.3,4.4)の使い方[各画面エリアの名称とパースペクティブのビューのカスタマイズ]

本エントリーでは、Eclipse(Eclipse4.3,4.4)の各画面エリアの名称の説明と、ビュー

記事を読む

Eclipse(4.3)の使い方[パースペクティブのツールバーのカスタマイズ(「ツール・バー可視性」と「メニュー可視性」タブ)]

前回エントリー「Eclipse(4.3)の使い方[各画面エリアの名称とパースペクティブのカスタマイズ

記事を読む

Eclipse4.4(Java)におけるビルド・パス関係の設定方法[ビルド・クラスパスの順序およびエクスポート設定]

Eclipse4.4(Java)におけるビルド関係のビルド・パス上の「ビルド・クラスパスの順序および

記事を読む

Java8のラムダ式とStream APIを利用してコーディング量の削減サンプル集

Java8になりラムダ式と「Stream API」が利用できるようになりました。 C#では一足早く

記事を読む

java8(JDK8)の新機能をEclipseとJUnitで[インターフェースのデフォルト実装の使い方]

本エントリーでは、まずSAM Typeの説明をさせていただきます。 その流れの中で「java8の新

記事を読む

「HyperSQL」の環境を作成し、Eclipseの「DBViewer」プラグインを利用してSQLを発行してみる

Eclipseの「DBViewer」プラグインを利用して「Java DB」の環境を作成し、SQLを発

記事を読む

Eclipse(4.3,4.4)の使い方[パースペクティブのツールバーのカスタマイズ(「コマンド・グループ可用性」と「ショートカット」タブ)]

「パースペクティブのカスタマイズ」画面には、以下の4つのタブが存在しております。 ツール・バ

記事を読む

Eclipseの使い方(Eclipse4.4のブックマーク機能とタスク機能)

今回は、Eclipseのブックマーク機能とタスク機能の説明をさせていただきます。 両機能とも効率的

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Spring5入門[AbstractRoutingDataSourceで複数DBへの接続とトランザクション制御]

今回はSpring MVCから複数データベースに接続とトランザクション

Eclipse Oxygen Update 1 (4.7.1)を利用してJUnit5の公式ガイドの内容を実践してみる。

いよいよJUnit5が本格的に利用できる環境が整ってきました。

Spring5入門[簡単なWebアプリのユニットテストをJUnit5とJMockitで作成]

Spring5入門ではJUnit4とmockitを利用したSpring

Spring5入門[STS(Spring Tool Suite)で簡単なWebアプリの典型的なユニットテストの実現方法]

前回は「Spring入門」で、Spring MVCを利用した簡単なWe

Spring5入門[STS(Spring Tool Suite)の環境作成と簡単なWebアプリの作成]

Struts1ももう過去の遺物になり、SAStrutsもEOLとなりも

→もっと見る

Optimization WordPress Plugins & Solutions by W3 EDGE
PAGE TOP ↑