ソフトウェアの開発・運用・保守

デザインパターン

デザインパターンとは??

• 頻繁に直面する設計上の課題に対して、繰り返 し使われる実績のある理想的な解法

– 設計のテンプレート・ひな形
– 対象に応じて変更、適応させて利用する – 部品ではない(=そのままは使えない)

効果

–  設計の原則に則った設計を促す
–  理解性、拡張性、再利用性が良い
–  開発経験の少ない人と、経験が豊富な人の差を埋める

Template Method パターン

概要

同じ親クラスを持つ子クラスが複数ある場合に適用するデザインパターンでコードの重複を少なくする

用途

複数のサブクラスで、同じではないが似たような実装を必要とする場合に用いる

解決法

重複コードを抽象クラスにまとめる
抽象クラスをテンプレートとして共通する処理を実装する
実装が分かれる具体的な処理は抽象宣言する

Factory Method パターン

概要

オブジェクト生成用のコードをカプセル化し、直接見えなくする

用途

具体的なクラス名を必要とするオブジェクト生成を整理する(抽象型やインタフェースが使えない)
– オブジェクト生成に必要な知識をカプセル化する(知識境界)

解決法

抽象クラスを作り、オブジェクトを生成するコンストラクタ・メソッ ドを宣言する

Strategy パターン

概要

実行時にアルゴリズムの選択を実現する

用途

状況に応じて、複数の選択肢から最適なアルゴリズムを選択する

解決法

 

Decorator パターン

概要

 

用途

 

解決法

 

Observer パターン

概要

publish-subscribeのアーキテクチャを実現する

用途

 

解決法

 

Visitor パターン

概要

 

用途

 

解決法

 

ソフトウェア開発おすすめ本

created by Rinker
¥3,520
(2020/10/01 06:42:56時点 楽天市場調べ-詳細)