JavaでHello World
Google
  HOME  |  基礎  |  掲示板  |  ツール |  書籍  |  デザインパターン  |  リンク  |  フィードバック
JavaでHello World > デザインパターン  
メニュー
Home
情報交換掲示板
Factory Method
Abstract Factory
Builder
Prototype
Singleton
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Chain Of Responsibility
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
  2003/07/25  田中宏和
デザインパターン
◆デザインパターンとは
デザインパターンとはオブジェクト指向のソフトウエアの設計に良く使用される特徴的な構造や機能を抽出してパターン化したものです。
◆GoFデザインパターン一覧
Factory Methodパターン オブジェクトを作成するときのインターフェースだけを規定して、実際にどのクラスをインスタンス化するかはサブクラスが決定するようにする
Abstract Factoryパターン 互いに関連したり依存したりするオブジェクト群をその具象クラスを明確にせずに生成するためのインターフェースを提供する
Builderパターン 複合オブジェクトについて、その作成過程を表現形式に依存しないものにすることにより、同じ作成過程で異なる表現形式のオブジェクトを生成できるようにする
Prototypeパターン 原型となるインスタンスを使って生成すべきオブジェクトの種類を明確にし、この原型をコピーすることで新しいオブジェクトを生成する
Singletonパターン クラスが1つだけインスタンスを持つことを保証し、そのインスタンスにアクセスするためのグローバルな方法を提供する
Adapterパターン クラスのインターフェースを、クライアントが求める他のインターフェースに変換する。Adapterパターンは互換性がないインターフェースのために組み合わせることができないクラス同士を組み合わせることができるようにする
Bridgeパターン 抽象概念とその実装を分離して、それらを独立に変更できるようにする
Compositeパターン 階層構造を表現するためにオブジェクトを木構造に組み立てる。Compositeパターンを利用することでクライアントは個々のオブジェクトとそのオブジェクトを合成したものを一様に扱うことができる
Decoratorパターン オブジェクトに付加的な機能を動的に追加する。Decoratorパターンは継承よりも柔軟な拡張方法を提供する
Facadeパターン サブシステムの複数のインターフェースに1つの統一されたインタフェースを与える。Facadeパターンはサブシステムの利用を用意にするための高レベルのインターフェースを定義する
Flyweightパターン 多数の小さいオブジェクトを効率よくサポートするために共有を利用する
Proxyパターン あるオブジェクトへのアクセスを制御するために、そのオブジェクトの代理または入れ物を提供する
Chain Of Responsibilityパターン 1つ以上のオブジェクトに要求を処理する機会を与えることにより、要求を送信するオブジェクトと受信するオブジェクトの結合を避ける。要求を受信する複数のオブジェクトをチェーン状につなぎ、あるオブジェクトがその要求を処理するまでそのチェーンに沿って要求を渡していく
Commandパターン 要求をオブジェクトとしてカプセル化することによって、様々な要求または要求からなるキューやログによりクライアントをパラメータ化する。そして、取り消し可能な操作をサポートする
Interpreterパターン 言語に対して、文法表現と、それを利用して文を解釈するインタプリタを一緒に定義する
Iteratorパターン 集約オブジェクトの内部表現を公開せずに、その集約オブジェクトの要素を順にアクセスする方法を提供する
Mediatorパターン オブジェクト群がどのように相互作用するかをカプセル化するオブジェクトを定義する。 Mediatorパターンはオブジェクト同士がお互いを明示的に参照し合うことがないようにして、結合度を低めることを促進する。それにより、オブジェクトの相互作用を独立に変えることができるようにする
Mementoパターン カプセル化を破壊せずに、オブジェクトの内部状態を捉えて外面化しておき、オブジェクトを後でこの状態に戻すことができるようにする
Observerパターン あるオブジェクトの状態が変わった時に、それに依存するすべてのオブジェクトに自動的にそのことが知らされ更新されるように、オブジェクト間に一対多の依存関係を定義する
Stateパターン オブジェクトの内部状態が変化したときにオブジェクトの処理内容を変えられるようにする
Strategyパターン アルゴリズムの集合を定義し、それぞれのアルゴリズムをカプセル化してそれらを交換可能にする。Strategyパターンはアルゴリズムを、それを利用するクライアントから独立に変更できるようにする
Template Methodパターン ある処理においてアルゴリズムのスケルトンを定義し、その中のいくつかのステップはサブクラスでの定義に任せる。Template Methodパターンはアルゴリズムの構造を変化させることなしにアルゴリズム中のあるステップをサブクラスで再定義させる
Visitorパターン オブジェクトの構造上の要素で実行される処理を表現する。Visitorパターンを使用することにより処理を加えるクラスを変更することなしに新しい処理を定義できるようになる
 
  ネットで買えば断然お得!お買い物なら楽天市場
ツールの部屋 - Java関連の書籍 - デザインパターン - 情報交換掲示板 - HOME