5

さまざまなデザイン パターンでプロジェクトを構築するのが常であるように、アーキテクトは常に、その特定のデザイン パターンの有利なビューを好みます。しかし、プロジェクトの将来の拡張に関して、違反領域と不利な点を理解する必要がある場合があります。私は現在、抽象的な工場のデザインパターンを使用しています。私はそれを理解しましたが、その欠点、その制限、失敗する場所を理解できませんでした。誰か、Abstract Factory デザイン パターンのこの別のビューを説明してもらえますか?

4

1 に答える 1

6

まず、どのようなデザイン パターンでも、抽象化と複雑さのレイヤーを追加することになるため、パターンがないことによる苦痛が明らかな場合にのみパターンを適用します。これは、Bob Martin の「Take the first bullet」や Nathan Marz の「 Suffering-Oriented Programming」に似た考え方です。

特に Abstract Factory では、どのファクトリを使用するかは実行時に決定されます。通常、これは、重要な情報に基づいた条件分岐によって適切なファクトリを提供する専用のコードで行われます。これは、より多くの工場が作成されるにつれて、この中央決定点を変更する必要があることを意味します。うざい。

最後に、1 つのファクトリの基礎となる詳細に変更があった場合、すべてのファクトリのインターフェイスを変更する必要がある場合があります。これにより、クライアントが壊れます。したがって、いつものように、インターフェイスの選択には細心の注意を払ってください。

于 2013-10-22T04:39:44.067 に答える