AI Technology Community
Protected Variations(保護された変更点)
(1) 問題:オブジェクト、サブシステム、システムに職責をどのように割り当てるか。これにより、これらの要素の変化点や不安定点が他の要素に悪影響を与えないようにする。
(2) 解決策:変化や不安定が予想される要素を特定し、それに対して安定した「インターフェース」を作成して職責を割り当てる。
(3) 分析:保護変化パターンは略してPVと呼ばれ、ほとんどのプログラミングや設計の基礎であり、パターンの基本的な動機の一つである。これにより、システムが変化に適応し、変化を隔離することができる。これはオブジェクト指向設計原則の中のオープン・クローズド原則に対応しており、つまり、既存の要素(クラス、モジュール、サブシステム、システム)を修正することなく、要素の機能を拡張することができる。オープン・クローズド原則は「変化のカプセル化原則(Principle of Encapsulation of Variation, EVP)」とも呼ばれ、システムの可変要素を見つけてカプセル化することを要求する。例えば、抽象層の異なる実装を異なる具体的なクラスにカプセル化する。また、EVPでは、ある可変性と別の可変性を混ぜないようにすることが求められる。これを行うと、システム内のクラスの数が急激に増え、システムの複雑度が増す。具体的な実装では、保護変化パターンに従うために、通常、システムを抽象化設計し、システムの抽象層を定義し、それから具体的なクラスで拡張する。システムの動作を拡張する必要がある場合、抽象層に何ら変更を加える必要はなく、新しい具体的なクラスを追加して新しい業務機能を実装すればよい。これにより、既存のコードを修正することなくシステムの機能を拡張することができる。ほとんどの設計原則とGoFパターンは、保護変化パターンの具体的な体現である。
41
item of content
- 5hits
- 0replay
-
0like
- collect
- send report