Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本
Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本
- 作者: Eric Freeman,Elisabeth Freeman,Kathy Sierra,Bert Bates,佐藤直生(監訳),木下哲也,有限会社福龍興業
- 出版社/メーカー: オライリージャパン
- 発売日: 2005/12/02
- メディア: 大型本
- 購入: 9人 クリック: 264回
- この商品を含むブログ (85件) を見る
前から気になっていた「デザインパターン」というものを勉強してみました。
それぞれのパターンの実装は非常に単純でした。しかし、「利用元のプログラムを変更せずに動作を変える」等、柔軟な動作が出来ることを、この本を通じて学びました。
この本では、GoF (Gang of Four)のデザインパターン23種類の中から、利用シーンが多いもの13種類について解説されています。また、Head Firstシリーズ特有の「章立てのストーリー&演習」で、実際に手を動かしながら読み進めるので、理解も深まったのではないかと思います。特に、ストーリーが良く出来ていて「パターン=ストーリー」と結びつけることが出来たのが、この本を選んで一番良かった点かと思います。
例えば...
- Strategy Pattern
- 振る舞いを動的に変更させる。
- → 飛ばないアヒルの模型にロケットを積んで飛ばせる。
- Observer Pattern
- 状態の変更を通知する。
- → 新聞の定期購読
- Decorator Pattern
- オブジェクトを装飾する。(元クラスを変更せずに、機能を追加する。)
- → コーヒーのトッピング。トッピング後の価格を算出する。
- Factory Method Pattern
- オブジェクト生成を疎結合化させる。
- → ピザ屋のフランチャイズ。店の場所によって、ピザの材料を変える。
- Singleton Pattern
- 唯一のオブジェクトを生成する。
- →チョコレート工場のボイラー
- Command Pattern
- Adapter Pattern, Facade Pattern
- インターフェースを変換し、連携可能にする。
- → コンセントの電圧変換コネクタ
- Template Method Pattern
- アルゴリズムをカプセル化する。
- → コーヒーと紅茶のレシピ。
- Iterator Pattern, Composite Pattern
- オブジェクトのコレクション管理を抽象化する。
- → パンケーキ屋と食堂の合併。それぞれのお店のメニュー管理方法の差異を吸収する。
- State Pattern
- 状態によって、振る舞いを変化させる。
- → ガムボールマシン。お金・残りガム数によって、動作を変更させる。
- Compound Pattern
- パターンをパターン化する。
- → MVCモデル
という感じです。
これだけ見ても多分、分からないですよね★
気になった方は、一度この本を手にとって見てください。デザインパターン初心者にはおすすめです。