Um fabricante de aeronaves produz modelos turboélices e tur...
O checklist é composto de quatro etapas. As três primeiras, step01, step02 e step03, são comuns aos modelos turboélices e turbofans, mas a quarta etapa depende do tipo de propulsor.
Para criar um design flexível que dê suporte a outros modelos sem alterações no código existente, a equipe de desenvolvimento definiu um método abstrato para o quarto passo. Ele deverá ser implementado pelas subclasses de Checklist que implementem o quarto passo de acordo com o propulsor usado. Por exemplo, a classe Turboelice seria implementada da seguinte maneira:
public class Turboelice extends Checklist { void step04( ) { // código irrelevante para a questão } }
Desse modo, o checklist para turboélices seria executado de acordo com o trecho de código a seguir:
Checklist c = new Turboelice(); c.check( );
Qual padrão de projeto foi empregado nesse design?
Comentários
Veja os comentários dos nossos alunos
O Factory Method é um padrão criacional de projeto que fornece uma interface para criar objetos em uma superclasse, mas permite que as subclasses alterem o tipo de objetos que serão criados.
O Template Method é um padrão de projeto comportamental que define o esqueleto de um algoritmo na superclasse mas deixa as subclasses sobrescreverem etapas específicas do algoritmo sem modificar sua estrutura.
O Strategy é um padrão de projeto comportamental que permite que você defina uma família de algoritmos, coloque-os em classes separadas, e faça os objetos deles intercambiáveis.
O Adapter é um padrão de projeto estrutural que permite objetos com interfaces incompatíveis colaborarem entre si.
O Singleton é um padrão de projeto criacional que permite a você garantir que uma classe tenha apenas uma instância, enquanto provê um ponto de acesso global para essa instância.
Fonte - > https://refactoring.guru/pt-br/design-patterns/catalog
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo