Design Patterns: Design patterns facilitent la réutilisation des conceptions et architectures succès. Design patterns vous aider à choisir des alternatives de conception qui rendent un système réutilisable et d'éviter des solutions de rechange que le compromis réutilisabilité. Ils aident à faire un système indépendant de la façon dont ses objets sont créés, composés, et representedAbstract Design Pattern: Une fabrique abstraite fournit une interface pour créer des familles d'objets liés, sans préciser leurs classes.
Sometimes concrètes l'on veut construire une instance de l'un d'une suite de classes, de décider entre les classes au moment de l'instanciation. Afin d'éviter de dupliquer le faire partout une instance est créée décision, nous avons besoin d'un mécanisme pour la création d'instances de classes connexes sans nécessairement connaître qui sera instantiated.Create une classe Fabrique Abstraite pour répondre à des instances de classes concrètes (généralement des sous-classes). La classe de l'instance résultante est inconnu du client de la Fabrique Abstraite.
Il existe deux types de Fabrique Abstraite: Fabrique Abstraite Simple est une classe abstraite définissant les méthodes d'usine pour répondre à des cas de sous-classes concrètes. Le choix de la sous-classe instancier est complètement défini par la méthode utilisée, et est inconnue pour le client. La seconde forme de Abstract Factory est une classe abstraite définissant un protocole commun de méthodes d'usine. Sous-classes concrètes de l'usine abstraite à mettre en œuvre ce protocole pour répondre à des cas de la suite appropriée des classes.
Besoin de faire abstraction des détails de mise en œuvre de produits -1. Le système doit être indépendant de la façon dont ses pièces constituantes sont créées, composées, et représentés. 2. Nécessité d'avoir plusieurs familles de produits - Le système doit être configuré avec un des multiples familles de produits. 3. nécessité d'appliquer les familles de produits qui doivent être utilisés ensemble - une famille d'objets de produits connexes est conçu pour être utilisés ensemble, et vous avez besoin de faire respecter cette contrainte. 4.
besoin de cacher les implémentations de produits et interfaces simplement présents - Vous souhaitez fournir une bibliothèque de classes de produits et que vous souhaitez seulement à révéler leurs interfaces, et non pas leurs implémentations. Caractéristiques: 1. Une fabrique abstraite est un fabricant de l'objet. 2. Il