リファクタリング―プログラムの体質改善テクニック (Object Technology Series)
|
| 価格: | ¥ 5,040 1500円以上は送料無料 詳細 |
発送可能時期: 在庫あり。
販売、発送は Amazon.co.jp
商品の説明
As the application of object technology-particularly the Java programming language-has become commonplace, a new problem has emerged to confront the software development community. Significant numbers of poorly designed programs have been created by less-experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, "non-optimal" applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as "refactoring," these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use. . .until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.
With proper training a skilled system designer can take a bad design and rework it into well-designed, robust code. In this book, Martin Fowler shows you where opportunities for refactoring typically can be found, and how to go about reworking a bad design into a good one. Each refactoring step is simple-seemingly too simple to be worth doing. Refactoring may involve moving a field from one class to another, or pulling some code out of a method to turn it into its own method, or even pushing some code up or down a hierarchy. While these individual steps may seem elementary, the cumulative effect of such small changes can radically improve the design. Refactoring is a proven way to prevent software decay.
In addition to discussing the various techniques of refactoring, the author provides a detailed catalog of more than seventy proven refactorings with helpful pointers that teach you when to apply them; step-by-step instructions for applying each refactoring; and an example illustrating how the refactoring works. The illustrative examples are written in Java, but the ideas are applicable to any object-oriented programming language.
商品の詳細
- Amazon.co.jp ランキング: #17762 / 本
- 発売日: 2000-05
- 版型: 単行本
- 423 ページ
エディターレビュー
ブックレビュー社
オブジェクト指向のプログラミング技術を向上させながら,プログラムの内部構造を改良する方法が学べる
題名にもなっているリファクタリングは,プログラムの内部構造を段階的に良くして,変更や機能追加をしやすく改良する方法である。最大のポイントは,自動化されたテストを有効に活用する点だ。プログラムを少し変更するたびにテストを実施し,バグの発生を素早く見付け,変更による新たなバグを効果的に防ぐ。こうした工夫のおかげで,安心して内部構造を改良できる。
リファクタリングの目的は,後からの機能追加や変更をしやすく改良することにある。どのように変更したらよいかという具体的な改良方法も,カタログという形式で網羅的に説明している。実は,これが本書の中心部分だ。カタログ形式なので,個々の改良方法は独立して読めるようになっている。また,リファクタリングに用いるため,変更の手順を細かく指定し,途中で確認しながら段階的に変更する方式を採用している。作業の中には,コンパイルとテストも含まれ,どの段階でテストすべきなのかも指示してある。用意された手順は,ミスによるバグ発生を防ぐようにと,周到に考えられたものだ。こうした修正手順を守っている限り,バグを生む可能性は低い。
カタログに含まれる改良方法は,オブジェクト指向の機能を上手に活用したプログラミング方法でもある。カタログの全項目を理解できれば,オブジェクト指向の特徴を生かした良いプログラミングが身に付く。その意味で,オブジェクト指向プログラミングの上達に役立つ教科書としても使える。オブジェクト指向の特徴を理解し,オブジェクト指向のプログラミング言語を覚えたら,真っ先に読むとよいだろう。オブジェクト指向の上手なプログラミングに関する良い本があまりないだけに,その目的に役立つ本書は貴重な存在と言える。ただし,本書のサンプルはすべてJavaで書かれているため,最低でもJavaの基本ぐらいは知っている必要がある。
全体的にはかなり良い内容なのだが,すべての面で完璧ではない。プログラミングでは,「問題領域(適用業務)のロジックにできるだけ近い形で表現する」という重大な基本原則がある。紹介している改善方法の中には,この原則に反している部分も少し含まれている。また,メソッド名や分割方法を工夫することで,コメントの必要性を極力減らしている。しかし,日本人にとっては,機能を日本語で読めることが重要なので,この考え方には従わないほうがよい。こういった点を注意しながら読めば,オブジェクト指向の特長を生かした,変更しやすい内部構造のプログラムを作れるようなるはずだ。全体的に見て,指摘した欠点を差し引いたとしても,本書の魅力は低下しない。オブジェクト指向の上手なプログラミング方法を習得したい人にとって,必ずや役立つ本である。 (インフォメーション・アナリスト 川村 渇真)
(Copyright©2000 ブックレビュー社.All rights reserved.)
内容(「BOOK」データベースより)
この本はリファクタリングのガイドブックです。系統だった効果的なリファクタリング手法を説明しています。コード中にバグを加えずに、ソフトウェアの構造を体系的に改善できます。
内容(「MARC」データベースより)
コード中にバグを加えずに、ソフトウェアの構造を体系的に改善することが可能なリファクタリングのガイドブック。職業プログラマを対象に、系統だった効果的なリファクタリング手法を説明する。
カスタマーレビュー
すぐに効果が実感できます、
他の方もおっしゃっていますが、1~3章までは必読ですが
時間のない人は辞書的にも使えると思います。
ただ、すべてを一読しておくと、明日行うコーディング等にも
役立つ情報が多々ありますので、ぜひ一読することをお勧めします。
目から鱗が落ちるようなサンプルの宝庫です。
改善法をカタログ化した点に価値がある
この本は著者のXPでのリファクタリングの経験をカタログ形式でまとめたもので、ソフトウェアを少しずつ日々改善し、ソフトウェアが肥大化が修正を困難にしないようにする小さな手法の集まりを紹介しています。ソフトウェアの構造に日々手を加える(部分的な再設計の)ための、問題点の発見の仕方、直し方がカタログ化されています。
書いてあることの個々の内容は比較的単純なものばかりですが、まずい設計が示唆する問題点、改善による効果、リファクタリングが可能な条件、リファクタリング時に見落としがちな点の指摘などが十分に書かれていて、リスクと効果をよく考えながらリファクタリングが出来るようによく配慮された内容になっています。プログラミング初級者にとって、とても勉強になる内容だと思いますが、経験を積んだプログラマにも日々のプログラミングのチェックリストとして非常に役に立つのではないかと思います。
JAVAでかかれているため、C++を使っている人には多少違和感がありそうですが、.NETプログラミングにはうってつけの内容だと思います。
いい本です
達人プログラマ、ソフトウェア職人気質も読みました(ただの流行り好きですね・・・)が前二書がメンタルな部分が多いのに対し、この本は非常に実践的です。
5章まででリファクタリングの意味を知り、後はリファレンス的に手元に置いておきたい本です。サンプルコードが多く明快な解説がされているので詰まったときに調べるのに最適だと思われます。




