Design Patterns: Os padrões de design torná-lo mais fácil reutilizar projetos bem sucedidos e arquiteturas. Os padrões de projeto ajudam a escolher alternativas de design que fazem um sistema reutilizável e evitar alternativas que reusabilidade compromisso. Eles ajudam a tornar um sistema independente de como seus objetos são criados, composto, e representedAbstract Design Pattern: Uma fábrica abstrata fornece uma interface para criar famílias de objetos relacionados sem especificar suas classes.
Sometimes concretas que se quer construir uma instância de um de uma suíte das aulas, decidindo entre as classes no momento da instanciação. A fim de evitar a duplicação da tomada em toda parte uma instância é criada decisão, precisamos de um mecanismo para a criação de instâncias de classes relacionadas, sem necessariamente saber que será uma classe instantiated.Create Abstract Factory para responder instâncias de classes concretas (geralmente subclasses). A classe da instância resultante é desconhecido para o cliente do Abstract Factory.
Existem dois tipos de Abstract Factory: Simple Abstract Factory é uma classe abstrata que define os métodos de fábrica para atender instâncias de subclasses concretas. A escolha de qual subclasse instanciar está completamente definida através da qual método é usado, é desconhecido e para o cliente. A segunda forma de Abstract Factory é uma classe abstrata que define um protocolo comum de métodos de fábrica. Subclasses concretas da fábrica abstrata implementar este protocolo para responder instâncias do conjunto apropriado de classes.
Necessidade de resumo de detalhes de implementação de produtos -1. O sistema deve ser independente de como suas peças constitutivas são criados, composto, e representados. 2. Necessidade de ter várias famílias de produtos - O sistema deve ser configurado com uma das várias famílias de produtos. 3. Necessidade de impor famílias de produtos que devem ser usados em conjunto - Uma família de objetos de produtos relacionados é projetado para ser usado em conjunto, e você precisa para impor essa restrição. 4.
Necessidade de esconder implementações de produtos e interfaces apenas apresentam - Você quer fornecer uma biblioteca de classes de produtos, e que pretende revelar apenas as suas interfaces, não as suas implementações. Características: 1. Uma fábrica abstrata é um fabricante de objeto. 2. É tipicamente podem produzir mais do que um tipo de objecto. 3. Cada objeto que ele produz é conhecido pa