日々精進

新しく学んだことを書き留めていきます

オブジェクト指向のこころ8

設計手法
・共通性/可変性分析
1.問題領域に存在する概念(共通性)を洗い出す
2.概念から抽象的側面(概念を表現する抽象クラスのインターフェース)を見つける
3.実装(可変性)を洗い出す
4.概念同士の関連(抽象クラス間の関連)を見極める


共通性/可変性分析とデザインパターンを用いた設計手法の比較
・共通性/可変性分析のメリット
いつでも使える。
デザインパターンのメリット
過去の事例から知見が得られる(例えば、Facadeはすぐ肥大化するのでインスタンス変数を持たせない方がいいとか)