2008年03月05日

HEAD FIRST デザインパターン

Head Firstデザインパターン―頭とからだで覚えるデザインパターンの基本
Head Firstデザインパターン―頭とからだで覚えるデザインパターンの基本
  • 発売元: オライリージャパン
  • レーベル: オライリージャパン
  • スタジオ: オライリージャパン
  • メーカー: オライリージャパン
  • 価格: ¥ 4,830
  • 発売日: 2005/12
  • 売上ランキング: 52152
  • おすすめ度 4.5


口語体で書かれていて、割ととっつきやすい例が挙げられているので分かりやすい。この本を読む前にオブジェクト指向における再利用のためのデザインパターン、Javaデザインパターン徹底攻略 (標準プログラマーズライブラリ)、増補改訂版Java言語で学ぶデザインパターン入門などの本を読んだことがあるが挫折。そもそもデザインパターンを使う意図が分からないことが多い。そんなの使わなくてもいいじゃん!って感じ。Head Firstデザインパターン―頭とからだで覚えるデザインパターンの基本を読んでみて、なぜデザインパターンが必要なのか?個々のデザインパターンはどうなっているのか?を知ることができます。GOFの23デザインパターンすべてに対して詳細な説明があるわけではないので悪しからず。

■ 1章 デザインパターン入門

- アプリケーション内の変化する部分を特定し、不変な部分と分離する
- 実装に対してではなく、インタフェースに対してプログラミングする
- 継承よりコンポジションを好む

■ 2章 Observerパターン

- SWAGとは「裏付けのない単なる思いつき」
- Oberserverパターンは、オブジェクト間の1対多の依存関係を定義し、あるオブジェクトの状態が変化すると、それに依存しているすべてのオブジェクトが自動的に通知され更新されるようにする

■ 3章 Decoratorパターン

- クラスは拡張に対しては開かれた状態であるべきであるが、変更に対しては閉じた状態であるべき
- 型の一致を実現するために継承を使っているけど、振舞いを取得するために継承を使用しているわけではない

■ 4章 Factoryパターン

- Factory Methodパターンはオブジェクト作成のためのインタフェースを定義しますが、どのクラスをインスタンス化するかについてはサブクラスに決定させる。Factory Methodにより、クラスはサブクラスにインスタンス化を先送りできる。
- Abstract Factoryパターンは、具象クラスを指定することなく、一連の関連オブジェクトや依存オブジェクトを作成するためのインタフェースを提供する
- Factory Methodパターンは、継承を使ってオブジェクトを作成
- Abstract Factoryパターンは、オブジェクトコンポジションを使ってオブジェクトを作成

■ 5章 Singletonパターン

- Singletonパターンは、クラスがインスタンスを1つしか持たないことを保証し、そのインスタンスをアクセスするグローバルポイントを提供する

■ 6章 Commandパターン

- Commandパターンは、リクエストをオブジェクトとしてカプセル化し、その結果、他のオブジェクトを異なるリクエスト、キュー、またはログリクエストでパラメータ化でき、アンドゥ可能な操作もサポートする
- NoCommandオブジェクトはnullオブジェクトの一例

■ 7章 AdaptorパターンとFacadeパターン

- Adapterパターンは、クラスのインタフェースをクライアントが期待する別のインタフェースに変換します。アダプタは、互換性のないインタフェースのためにそのままでは連携できないクラスを連携させる
- Facadeパターンは、サブシステムの一連のインタフェースに対する、統合されたインタフェースを提供する。ファサードは、サブシステムをより使いやすくする高水準インタフェースを提供

■ 8章 Template Methodパターン

- Template Methodパターンはメソッドにおけるアルゴリズムの骨組みを定義し、いくつかの手順をサブクラスに先送りする。Template Methodは、アルゴリズムの構造を変えることなく、アルゴリズムのある手順をサブクラスに再定義させる

■ 9章 IteratorパターンとCompositeパターン

- Iteratorパターンは、内部表現を公開することなくアグリゲートオブジェクトの要素に順次アクセスする方法を提供する
- Compositeパターンでは、部分-全体階層を表現するために、オブジェクトをツリー構造に構成できる。Compositeパターンにより、クライアントは個別のオブジェクトとオブジェクトのコンポジションを同じように扱うことができる

■ 10章 Stateパターン

- Stateパターンでは、オブジェクトの内部状態が変化した際にオブジェクトがその振舞いを変更できる。オブジェクトはそのクラスを変更したように見える

下記のランキングに参加しています。
記事がお役に立ちましたら、(1つでもいいので)クリックをお願いします!
にほんブログ村 本ブログへ
ブログランキング・にほんブログ村へ
ブログランキング バナー

■ 関連書籍
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)マーチン ファウラー Martin Fowler 児玉 公信

おすすめ平均
starsリファクタリングの勉強するなら
starsオブジェクト指向がなんでいいの。その回答がここにある。
stars体質改善の処方箋
stars可読性向上の特効薬
starsコーディングが変わった

Amazonで詳しく見る
by G-Tools


パターン指向リファクタリング入門~ソフトウエア設計を改善する27の作法
パターン指向リファクタリング入門~ソフトウエア設計を改善する27の作法ジョシュア・ケリーエブスキー 小黒 直樹 村上 歴

おすすめ平均
stars解説が丁寧
starsデザインパターンに違和感を抱いてる人にはオススメ
starsシンプルで、読みやすいコードを。
stars良い設計はデザインパターンに行き着く

Amazonで詳しく見る
by G-Tools
posted by bluedemio at 22:10| 東京 晴れ| Comment(0) | TrackBack(1) | 情報工学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/88418282

この記事へのトラックバック

Javaデザインパターン徹底攻略 (標準プログラマーズライブラリ)
Excerpt: Javaデザインパターン徹底攻略 (標準プログラマーズライブラリ) デザインパターンをやろうと思っても、分厚い本ばかりでやる気...
Weblog: もぼなもな書房
Tracked: 2009-05-22 19:24