(Cinco parâmetros, cinco dependências de parâmetro, reutiliza um padrão)
O padrão de fábrica de abreviação é baseado no padrão de fábrica conhecido normalmente. Ele reutiliza o padrão de interface e, portanto, demonstra delegações de dependência no curso do comportamento de delegação para o padrão de interface. É uma implementação decorrente do padrão de fábrica de abreviações, na qual todos os produtos concretos implementam todas as interfaces de produto de abreviação às quais estão limitados. Exemplifica o uso de dependências de parâmetro para manter uma semântica de padrão assegurada como os argumentos adicionais são limitados ao padrão. Assim como o padrão singleton emprega itens que não colaborações para representar interfaces de padrão, este padrão utiliza pacotes. As instâncias deste padrão são pacotes.
(Dois parâmetros, uma dependência de parâmetro, reutiliza três padrões)
O padrão de delegação possui dois parâmetros: um parâmetro que representa o delegante e um parâmetro que representa a delegação no padrão de delegação. O delegante delega operações definidas na interface de delegação e implementadas pelo delegante para uma instância do tipo de delegação. Esse padrão demonstra o uso de filtros de mapeamento de delegação para customizar o nome do vínculo de palavras-chave para as instâncias de reutilização do padrão de lista de palavras-chave. Essa customização de nome não é necessária para fornecer uma implementação útil do padrão de delegação, mas tem sido incluída nessa amostra para demonstrar o uso de filtros de mapeamento de delegação.
(Seis parâmetros, cinco dependências de parâmetro, um micropadrão)
O padrão de associação direcionada é outro padrão primitivo independente, um micropadrão utilizado por outros padrões de maior granularidade. O padrão de associação direcionada possui dois parâmetros primários que definem o contexto de uma associação direcionada. Ele possui outros cinco parâmetros periféricos que ajudam a formar a associação configurando o tipo de associação, os nomes da função e a multiplicidade. Este padrão é reutilizado pelo padrão de delegação de amostra e é um exemplo de um padrão que inclui muitos tipos de parâmetros menos comuns. Cadeias literais, inteiros e enumerações de padrão são utilizados na definição deste padrão. O código do padrão encontrado nessa amostra para lidar com esses literais e enumerações é inestimável para os autores de padrão ao aprenderem que existem tipos de padrões similares.
(Dois parâmetros, uma dependência de parâmetro, um micropadrão)
O padrão de implementação é um padrão primitivo que é independente e não origina outros padrões em sua implementação. É um padrão muito simples que assegura um relacionamento de implementação UML presente desde um argumento de implementação até um argumento de interface.
(Dois parâmetros, uma dependência de parâmetro, reutiliza um padrão).
O padrão de interface, um padrão que é reutilizado por alguns outros padrões de amostra, também reutiliza um padrão em sua implementação. O padrão de implementação é um padrão primitivo (também referido como um micropadrão) e é utilizado pelo padrão de interface para garantir que o argumento de implementação realmente implemente os argumentos da interface. O padrão de interface possui dois parâmetros, um para representar a interface e um para representar a implementação. Inclui um exemplo de mapeamento de representação básica utilizando usos de definição padrão e representações de dependência de padrão. Esse é um padrão bem básico, mas funcional, e também é mencionado em outras partes da documentação de padrões. Esse padrão também mostra a combinação de utilizar as duas representações de padrão e o código customizado para implementar os métodos de atualização de dependência de um padrão. O padrão de implementação é reutilizado para assegurar o relacionamento de implementação, e então o código do método de atualização customizado é utilizado para assegurar que a implementação realmente implemente todas as operações definidas nos argumentos da interface.
(Dois parâmetros, uma dependência de parâmetro, um micropadrão)
O padrão de lista de palavra-chave é um padrão primitivo que é independente e não origina outros padrões em sua implementação. Ele também demonstra o uso de uma cadeia literal UML como um tipo de parâmetro e o uso de um megatipo UML abstrato como um tipo de parâmetro. Este padrão também inclui funcionalidade para assegurar corretamente as semânticas de padrão como os argumentos que são desvinculados e as instâncias de padrão que são inaplicáveis. O padrão de lista de palavra-chave pode ser instanciado a partir da visualização do Explorer de Padrão em sua própria direita, mas é mais indicado para ser reutilizado por outros padrões por meio do mecanismo de representação de padrão.
(Zero parâmetro)
O padrão singleton é baseado no padrão singleton normalmente conhecido. É um exemplo de padrão sem parâmetros. Possui um parâmetro implícito, que pode ser considerado como a própria instância do padrão em si. Esse padrão representa suas instâncias de padrão como classes em vez da representação mais comum de colaboração. Um uso funcional desse padrão é arrastá-lo da visualização do Explorer de Padrão para uma classe que você precisa assegurar que seja um singleton. Arrastando esse padrão na superfície do diagrama (dentro de um pacote) resulta em uma nova instância de singleton e, portanto, a criação de uma nova classe para representar essa instância.
(Três parâmetros, duas dependências de parâmetro, reutiliza dois padrões)
O padrão de estratégia é baseado no padrão de estratégia comumente conhecido. Ele reutiliza os padrões de lista de palavra-chave e amostra de interface e contém um exemplo de mapeamento de delegação de parâmetro. Possui três parâmetros, um para representar a interface de estratégia, um para representar a estratégia concreta, e um para representar o contexto da estratégia em si. Para demonstrar a reutilização do padrão de lista de palavra-chave, o padrão assegura que a palavra-chave <<Estratégia>> seja apresentada no argumento do parâmetro da interface da estratégia. O padrão de interface é reutilizado para garantir que a interface da estratégia seja implementada pelos argumentos de limite do parâmetro da estratégia concreta.
* Padrões de Design: Elementos de Software Orientados a Objetos Reutilizáveis, Gamma, Helm, Johnson e Vlissides (Addison-Wesley, 1995) copyright (c) 1995 por Addison-Wesley Publishing Company, Inc. Todos os Direitos Reservados.