*

お勧め本紹介[新装版 リファクタリング―既存のコードを安全に改善する― (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)”]


スポンサードリンク



関連記事

Selenium入門その5[ページオブジェクトパターン(Page Object Design Pattern)を利用して変更に強いテストを作成する方法]

Selenium入門その2 では「UIマップファイル」と言う仕組みが存在していることに言及させてい

記事を読む

java8(JDK8)の新機能[大幅に強化されたコレクションAPI:java.util.List] をeclipseとJUnitで確認する。

Java8(JDK8)では、ラムダ式の導入を前提とした、コレクションAPIの新機能が追加されました。

記事を読む

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

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

記事を読む

Java8の新機能に完全対応のEclipseメジャーリリースとなる Eclipse 4.4 Luna (ルナ) が遂にリリース

Eclipse メジャーリリースとなる Eclipse 4.4 Luna (ルナ) が遂にリリースさ

記事を読む

JUnit入門その3[Eclipse4.4のJUnitプラグインとMockフレームワークのJMockitの併用の基本]

JUnit入門その3ではMockフレームワークのJMockitを利用したテスト環境の構築と使い方につ

記事を読む

Javaによる非同期処理入門その1[非同期処理の実装方法の概説]

Javaによる非同期処理に関するエントリーを前々から作成したいと思っていたのですが、ついに作成してみ

記事を読む

Java超入門 with Eclipse[4:クラスに関する基礎知識(修飾子とクラスとインスタンスと変数)]

前回は、Javaの基本であるクラスの基本的な知識をざっくりと説明させていただいたあと、 packa

記事を読む

Selenium入門その4[Selenium WebDriver(Java/Junit4)の基本コマンド]

前回はEclipse環境でSelenium WebDriverでJava/Junit4を利用したテス

記事を読む

Eclipse4.4,4.3の使い方[エディタのフォントサイズの変更方法]

今回は、Eclipse4.4と,4.3におけるエディタエリアのフォントサイズの変更方法を説明させてい

記事を読む

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

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

記事を読む

Message

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

Selenium入門その6[Selenium3でWebDriver(Java/Junit4)の環境を作成しEdge,Chrome,Firefoxで確認してみる]

Selenium3も3.0.1がリリースされましたし、今後は本格的にS

Selenium利用時のトラブルシューティング方法[クリック編]

Seleniumは便利なテスト自動化ツールですし、今後は更なる利用者の

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

Java8になりラムダ式と「Stream API」が利用できるようにな

Selenium入門その5[ページオブジェクトパターン(Page Object Design Pattern)を利用して変更に強いテストを作成する方法]

Selenium入門その2 では「UIマップファイル」と言う仕組みが

Javaによる非同期処理入門その1[非同期処理の実装方法の概説]

Javaによる非同期処理に関するエントリーを前々から作成したいと思って

→もっと見る

Optimization WordPress Plugins & Solutions by W3 EDGE
PAGE TOP ↑