デザインパターン

【オブジェクト指向のこころ】21章 Singleton, Double-Checked Locking, Initialization-on-demand holder idiom

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「21章 SingletonパターンとDouble-Checked Lockingパターン」のまとめ。 Singletonパターン Singletonパターンをマルチスレッドで利用したときの問題 Double-Checked Lockingパター…

【オブジェクト指向のこころ】20章 生成に関するパターンから得られる教訓

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第20章 生成に関するパターンから得られる教訓」のまとめ。 オブジェクトの生成に関する一般的な規則 Factoryの効果 オブジェクトの生成に関する一般的な規則 オブジェクトの生成と…

【オブジェクト指向のこころ】17章 Decoratorパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第17章 Decoratorパターン」のまとめ。 Decoratorパターンの目的 例 パターンの適用 コード例 まとめ Decoratorパターンの目的 GoFによれば、Decoratorパターンの目的は以下の通り…

【オブジェクト指向のこころ】16章 分析マトリクス

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第16章 分析マトリクス」のまとめ。 分析マトリクス 手順 要求をシナリオに分類する 概念を見つけ出す 行と列の規則を確認する デザインパターンを洗い出す 高次のアプリケーション…

【オブジェクト指向のこころ】15章 共通性/可変性分析

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第15章 共通性/可変性分析」のまとめ。 手順 共通性/可変性分析を用いて、概念と実装を洗い出す 抽象的側面のインタフェースを規定する 具体例 まとめ 共通性/可変性分析: Commonal…

【オブジェクト指向のこころ】14章 パターンの落とし穴

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第14章 デザインパターンの原則と戦略 14.6 健全な猜疑心」のまとめ。 パターンは有益な指針となるが、危険な松葉杖でもある。 パターンの落とし穴には以下のようなものがある。 表…

【オブジェクト指向のこころ】14章 抽象クラス vs インタフェース

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第14章 デザインパターンの原則と戦略」のまとめ。 抽象クラス インタフェース まとめ 抽象クラス 抽象クラスには共通する状態と振る舞いを保持できる。 つまり、すべての派生クラ…

【オブジェクト指向のこころ】14章 デザインパターンの原則と戦略

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第14章 デザインパターンの原則と戦略」のまとめ。 解放/閉鎖原則 コンテキストからの設計原則 Bridgeパターンの例 流動的要素のカプセル化 解放/閉鎖原則 モジュール、メソッド、…

【オブジェクト指向のこころ】13章 エキスパートはどのように設計するのか?(2)

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第13章 エキスパートはどのように設計するのか?」のまとめ。 【オブジェクト指向のこころ】エキスパートはどのように設計するのか?(1) の続き。 kyonc5.hatenablog.com パターン…

【オブジェクト指向のこころ】13章 エキスパートはどのように設計するのか?(1)

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第13章 エキスパートはどのように設計するのか?」のまとめ。 パターンで考えるための手順 パターンの並び替え コンテキストを考慮すると時の規則 最年長のパターンが他のパターン…

【オブジェクト指向のこころ】11章 Abstract Factoryパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第11章 Abstract Factoryパターン」のまとめ。 Abstract Factoryパターンの目的 適用例 Abstract Factoryパターンを適用する Adapterパターンを組み合わせる 補足 まとめ Abstract …

【オブジェクト指向のこころ】10章 Bridgeパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第10章 Bridgeパターン」のまとめ。 Bridgeパターンの目的 適用例 このアプローチの問題点1 このアプローチの問題点2 代替案 Bridgeパターンの適用 補足 まとめ Bridgeパターンの目…

【オブジェクト指向のこころ】9章 Strategyパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第9章 Strategyパターン」のまとめ。 Strategyは戦略という意味。 流動的要素をカプセル化し、交換可能なものにする方法。 適用例 SalesOrder(注文)クラスは税金の計算処理の機能…

【オブジェクト指向のこころ】8章 カプセル化

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第8章 視野を広げる」のまとめ。 カプセル化とは カプセル化とは、「あらゆるものを隠蔽すること」であると考えるべき。 データの隠蔽はカプセル化の1つの側面でしかない。 データ…

【オブジェクト指向のこころ】7章 Adapterパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第7章 Adapterパターン」のまとめ。 Adapterパターンは、クラス(またはクラス群)のインタフェースを、望み通りのインタフェースに変換することが可能になる。 これには望み通りの…

【オブジェクト指向のこころ】6章 Facadeパターン

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第6章 Facadeパターン」のまとめ。 Facadeパターンは、既存システムのフロントエンドとして新たなインタフェース(見せかけ=facade)を作成する。 単語の意味 (建物の)正面 見か…

【オブジェクト指向のこころ】5章 デザインパターンを学習する理由

「デザインパターンとともに学ぶオブジェクト指向のこころ」の学習記録。 「第5章 デザインパターンの紹介」のまとめ。 デザインパターンを学習する理由は? 解決策の再利用: 確率されている設計を再利用することで、細々とした詳細を避けることができる。何…