レベルが上がったあとに読むとまた違った見方ができる本だと思います。
Kindle Paperwhiteに対応していないようで、本当に残念です。
対応することを切に願います。

無料のKindleアプリをダウンロードして、スマートフォン、タブレット、またはコンピューターで今すぐKindle本を読むことができます。Kindleデバイスは必要ありません。
ウェブ版Kindleなら、お使いのブラウザですぐにお読みいただけます。
携帯電話のカメラを使用する - 以下のコードをスキャンし、Kindleアプリをダウンロードしてください。
新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES) 単行本(ソフトカバー) – 2014/7/26
あの名著が蘇る!
プログラムに潜む扱いにくい部分を見つけ出し、その動作を変えずに内部の構造を改善していくためのテクニックを整理したマーティン・ファウラー氏によるソフトウェア開発の名著『リファクタリング プログラミングの体質改善テクニック』(""Refactoring:Improving the Design of Existing Code"")が、オリジナルの訳者による丁寧な見直しと現代的なJava開発環境による「再リファクタリング」を施した書き下ろし付録を収録して再発行! 旧版の価値を知るベテランはもちろん、これからソフトウェア開発に携わる新人にも必読の一冊です。
プログラムに潜む扱いにくい部分を見つけ出し、その動作を変えずに内部の構造を改善していくためのテクニックを整理したマーティン・ファウラー氏によるソフトウェア開発の名著『リファクタリング プログラミングの体質改善テクニック』(""Refactoring:Improving the Design of Existing Code"")が、オリジナルの訳者による丁寧な見直しと現代的なJava開発環境による「再リファクタリング」を施した書き下ろし付録を収録して再発行! 旧版の価値を知るベテランはもちろん、これからソフトウェア開発に携わる新人にも必読の一冊です。
- 本の長さ480ページ
- 言語日本語
- 出版社オーム社
- 発売日2014/7/26
- ISBN-10427405019X
- ISBN-13978-4274050190
この商品を買った人はこんな商品も買っています
ページ 1 以下のうち 1 最初から観るページ 1 以下のうち 1
登録情報
- 出版社 : オーム社 (2014/7/26)
- 発売日 : 2014/7/26
- 言語 : 日本語
- 単行本(ソフトカバー) : 480ページ
- ISBN-10 : 427405019X
- ISBN-13 : 978-4274050190
- Amazon 売れ筋ランキング: - 127,699位本 (本の売れ筋ランキングを見る)
- - 1,113位プログラミング (本)
- カスタマーレビュー:
著者について
著者をフォローして、新作のアップデートや改善されたおすすめを入手してください。
Smalltalkエバンジェリスト。2003年度IPA未踏ソフトウェア創造事業スーパークリエータ。(株)オージス総研、(株)豆蔵にてオブジェクト指向関連のコンサルティング、開発業務に従事した後、合同会社ソフトウメヤを立ち上げ現在に至る。SORABITO株式会社の技術フェローも兼任。
著書に「自由自在Squeakプログラミング」(ソフト・リサーチ・センター)、訳書に「ケント・ベックのSmalltalkベストプラクティス・パターン」(ピアソン・エデュケーション)、「データベース・リファクタリング」(ピアソン・エデュケーション)などがある。
Smalltalkのライブラリ作成が趣味。http://github.com/mumez
著者の本をもっと発見したり、よく似た著者を見つけたり、著者のブログを読んだりしましょう
-
トップレビュー
上位レビュー、対象国: 日本
レビューのフィルタリング中に問題が発生しました。後でもう一度試してください。
2020年7月5日に日本でレビュー済み
Amazonで購入
第2版はJavaScriptでの説明になってしまっているらしく、どちらかというとJavaに近い言語で開発している私はこちらを購入しました。
どういうリファクタリング方法があり、どういう場面で適用すればよいか、どういう手順なら既存コードを壊さず安全にリファクタリングができるか、がサンプルコードとともに丁寧に説明されており、大変素晴らしいです。
既存の残念なコードを修正したい人だけでなく、残念なコードを生産したくない人にもおすすめです。
そして、本書の評価が☆5でないのは、Kindle版が非常に使いにくいためです。
Kindle版は紙版と同様のレイアウトになっています。私は10インチのタブレットで読んでいますが、縦画面表示だと文字が小さくて辛いです。横画面にすると読めるサイズにはなりますが、縦スクロールでページを一通り読み、横スクロールで次のページへ移動する、という操作になり、イマイチです。
また、蛍光ペンや辞書を引くための文字列選択の挙動がおかしいです。1文字単位での選択ができず、特定の単語だけ選択することができません。なぜか、文節単位(?)か何かの単位でしか選択できないです。
Kindle版は、上記が改善されれば☆5だと思っています。
どういうリファクタリング方法があり、どういう場面で適用すればよいか、どういう手順なら既存コードを壊さず安全にリファクタリングができるか、がサンプルコードとともに丁寧に説明されており、大変素晴らしいです。
既存の残念なコードを修正したい人だけでなく、残念なコードを生産したくない人にもおすすめです。
そして、本書の評価が☆5でないのは、Kindle版が非常に使いにくいためです。
Kindle版は紙版と同様のレイアウトになっています。私は10インチのタブレットで読んでいますが、縦画面表示だと文字が小さくて辛いです。横画面にすると読めるサイズにはなりますが、縦スクロールでページを一通り読み、横スクロールで次のページへ移動する、という操作になり、イマイチです。
また、蛍光ペンや辞書を引くための文字列選択の挙動がおかしいです。1文字単位での選択ができず、特定の単語だけ選択することができません。なぜか、文節単位(?)か何かの単位でしか選択できないです。
Kindle版は、上記が改善されれば☆5だと思っています。
2018年8月28日に日本でレビュー済み
Amazonで購入
オブジェクト指向に関する、具体的な改善方法がまとめられている良書だと思います。
電子化されて非常にありがたいのですが、kindleの利用可能端末にpaperwhite等の一部大型リーダーが無いのが非常に残念です。
本書のように1ページのボリュームの多いもの程、大画面で読みたいですが、、
電子化されて非常にありがたいのですが、kindleの利用可能端末にpaperwhite等の一部大型リーダーが無いのが非常に残念です。
本書のように1ページのボリュームの多いもの程、大画面で読みたいですが、、
2016年10月13日に日本でレビュー済み
プログラマに求められるのは、
機能を追加するためにコードを書き、
障害を修正するためにコードを修正し、
正しく動作するソフトウェアを開発することです。
しかし、この本によって、プログラマに課せられる使命が、
それだけはないことが明確に再定義されました。
それは「コードはメンテナブルでなくてはならない」ことです。
そして、そのための活動が「リファクタリング」です。
定義上「機能追加しない」「障害修正しない」タスクですが、
それがプログラミング活動に必達事項として定義されたのです。
なぜなら、
「機能追加しない」「障害修正しない」タスクでも、完遂し、
コードがメンテナブルであれば、読むのも書くのも楽なので、
機能追加と障害修正に大きく寄与するからです。
逆もまた真で、コードがメンテナブルでなければ、
機能追加と障害修正ができなくなります。
この活動の意義が理解され、
全ての開発現場に浸透することを切に願います。
機能を追加するためにコードを書き、
障害を修正するためにコードを修正し、
正しく動作するソフトウェアを開発することです。
しかし、この本によって、プログラマに課せられる使命が、
それだけはないことが明確に再定義されました。
それは「コードはメンテナブルでなくてはならない」ことです。
そして、そのための活動が「リファクタリング」です。
定義上「機能追加しない」「障害修正しない」タスクですが、
それがプログラミング活動に必達事項として定義されたのです。
なぜなら、
「機能追加しない」「障害修正しない」タスクでも、完遂し、
コードがメンテナブルであれば、読むのも書くのも楽なので、
機能追加と障害修正に大きく寄与するからです。
逆もまた真で、コードがメンテナブルでなければ、
機能追加と障害修正ができなくなります。
この活動の意義が理解され、
全ての開発現場に浸透することを切に願います。
2019年11月16日に日本でレビュー済み
Amazonで購入
購入したあとにKindle Paperwhiteに対応していないことを知りました…これは辛い…本当に対応を切望します
2014年12月12日に日本でレビュー済み
プログラマ3年目です。
とても素晴らしい本だと思います。
上司のレビューを受けて、リファクタリングをするという事が良くありますが、
そのたびに、もっと綺麗なコーディングが出来るようになりたいと思います。
この本は、僕のような思いを抱いている人にとって大きな助けとなると確信できるものです。
ただ、必ずしも全ての項目を満たしたほうが良いとは思いません。
例えば、「コード内のコメントは関数名や変数名が正しければ書く必要性がない」と解釈のできる文章が随所にありますが、
それは、英語が母国語である方の意見だと思います。
日本語の内容を英語で上手く表現できないような場合や
処理の中身は簡単でも難しい内容を扱っている場合には、関数名、変数名が適切であったとしてもコメントは残しておくべきだと思います。
また、共同で開発を行う際に、新人の理解を助けるためにもよっぽど簡単ではない限りコメントはなるべく残した方がいいと僕は思っています。(あくまで僕の意見)
あと、一番初めに触れておくべき内容だと思う命名規則に関する記述がないのが少し気になりました。
開発チーム毎に命名規則は異なるとはいえ、ある程度パターン化されているので、それを紹介して欲しかったです。
命名規則に関しては、割と衝突が絶えなかったりすので、作者の意見を聞いてみたかったというのもあります。
いろんなところに参照が飛んだりしてるので、本としての構成が素晴らしく整っている!とは言いませんが、
紳士的なジョーク(?)を交え、「飽きずに、且つ、確実に綺麗なコーディングが可能になる」という点に関しては100点満点です。
とても素晴らしい本だと思います。
上司のレビューを受けて、リファクタリングをするという事が良くありますが、
そのたびに、もっと綺麗なコーディングが出来るようになりたいと思います。
この本は、僕のような思いを抱いている人にとって大きな助けとなると確信できるものです。
ただ、必ずしも全ての項目を満たしたほうが良いとは思いません。
例えば、「コード内のコメントは関数名や変数名が正しければ書く必要性がない」と解釈のできる文章が随所にありますが、
それは、英語が母国語である方の意見だと思います。
日本語の内容を英語で上手く表現できないような場合や
処理の中身は簡単でも難しい内容を扱っている場合には、関数名、変数名が適切であったとしてもコメントは残しておくべきだと思います。
また、共同で開発を行う際に、新人の理解を助けるためにもよっぽど簡単ではない限りコメントはなるべく残した方がいいと僕は思っています。(あくまで僕の意見)
あと、一番初めに触れておくべき内容だと思う命名規則に関する記述がないのが少し気になりました。
開発チーム毎に命名規則は異なるとはいえ、ある程度パターン化されているので、それを紹介して欲しかったです。
命名規則に関しては、割と衝突が絶えなかったりすので、作者の意見を聞いてみたかったというのもあります。
いろんなところに参照が飛んだりしてるので、本としての構成が素晴らしく整っている!とは言いませんが、
紳士的なジョーク(?)を交え、「飽きずに、且つ、確実に綺麗なコーディングが可能になる」という点に関しては100点満点です。
2019年6月29日に日本でレビュー済み
名著である。
書籍の内容は非常に実践的である。
リファクタリングをやるならば、1度目を通すべき。
このような本をまとめてくれて、本当にありがたい。
書籍の内容は非常に実践的である。
リファクタリングをやるならば、1度目を通すべき。
このような本をまとめてくれて、本当にありがたい。
2014年7月30日に日本でレビュー済み
基本的な内容は「リファクタリング―プログラムの体質改善テクニック」とほぼ同様ですが、
オリジナルの訳者による丁寧な見直しが新装版にも反映されています。
まだ全て読み終わってはいませんが・・・
(旧版との比較を厳密にしながら読み進めているわけではないですが・・・)
旧版はもう販売していませんので、多くの方に購入する機会をとの考えで新装版を発売されたそうです。
新装版の目玉は、付録「 Java のバージョンアップに伴うリファクタリングをめぐる環境の変化」です。
旧版出版以降のJavaとそのテスティングフレームワークの進歩の記載があります。
対象となるJavaは7までとなっています。
Javaとそのテスティングフレームワークの進歩の記載の後に、その進歩を反映して、
本書に含まれるコードを再びリファクタリングしています。実際にはジェネリック等が取り扱われています。
この部分が新装版の最も注目されるべき箇所であると思います。
本書が全面的にJava7に対応されていないことについては不満がありますが
今後は、Oracleは今までと違ってJavaの言語仕様の強化に注力して行くことが見えていますし
既にJava8でかなりの変更があったといえ、付録の再リファクタリングで十分に新装版の意味はあると考えます。
オリジナルの訳者による丁寧な見直しが新装版にも反映されています。
まだ全て読み終わってはいませんが・・・
(旧版との比較を厳密にしながら読み進めているわけではないですが・・・)
旧版はもう販売していませんので、多くの方に購入する機会をとの考えで新装版を発売されたそうです。
新装版の目玉は、付録「 Java のバージョンアップに伴うリファクタリングをめぐる環境の変化」です。
旧版出版以降のJavaとそのテスティングフレームワークの進歩の記載があります。
対象となるJavaは7までとなっています。
Javaとそのテスティングフレームワークの進歩の記載の後に、その進歩を反映して、
本書に含まれるコードを再びリファクタリングしています。実際にはジェネリック等が取り扱われています。
この部分が新装版の最も注目されるべき箇所であると思います。
本書が全面的にJava7に対応されていないことについては不満がありますが
今後は、Oracleは今までと違ってJavaの言語仕様の強化に注力して行くことが見えていますし
既にJava8でかなりの変更があったといえ、付録の再リファクタリングで十分に新装版の意味はあると考えます。