デザインパターン勉強会 第一回 基礎知識編 吉田 哲也
デザインパターンとは ソフトウェアの 再利用性 や 柔軟性 を高めるための 達人たちの努力の結果 を 体系化 し 命名 したもの つまりはオブジェクト指向のメリットを享受できる実装パターン
その前に… 結合度 できる限り結合度を弱くすることで、 再利用性 や 柔軟性 が高くなる 役割 本当に対象のクラスはその機能 ( メソッド ) を持つべきなのか? とりあえず機能が必要だからメソッドを実装しました… 本当に対象のクラスはそのデータ ( フィールド ) を持つべきなのか? とりあえずデータが必要だからフィールドに持たせました…
is-a  と  has-a 実装方法 is-a ( 継承 ) 、 has-a ( コンポジション ) 結合度 is-a >> has-a  役割 is-a  は役割も継承する
デザインパターンを学ぶ意義 再利用可能な、柔軟性の高い設計、実装 コミュニケーション など
豆知識 Gang of Four (GoF)  により体系化された Erich Gamma JUnit  共同開発者  (with Kent Beck) Richard Helm Ralph Johnson John Vlissides Design Patterns Elements of Reusable Object-Oriented Software (GoF  本 ) GoF  本には  23  個のデザインパターンが記載されている
デザインパターンの使いどころ 再利用性や拡張性が要求されるところ フレームワーク 複数バージョン対応アダプタ 制約があり実装に工夫が必要なところ インタフェースは変えれないが… . ライブラリだけ変更したいのだが… など
デザインパターンを使う流れ エッセンスを理解する リファクタリングのときに使う 詳細設計のときに使う 自然と使う

デザインパターン勉強会