A equipe de desenvolvimento precisa criar um mecanismo para ...
O Padrão de Projeto da classificação GoF mais apropriado para resolver esse problema, restringindo a instanciação de uma classe a um único objeto, é o(a)
Comentários
Veja os comentários dos nossos alunos
O Singleton é o padrão de projeto mais famoso (e às vezes o mais polêmico) da categoria Criacional do catálogo do GoF (Gang of Four). Ele tem um propósito de vida extremamente específico: garantir que uma classe tenha apenas uma única instância e fornecer um ponto global de acesso para ela.
Na prática de um sistema de cache (como o do cenário), se cada parte do código criasse o seu próprio objeto de cache usando um new Cache(), você teria dados duplicados e inconsistentes espalhados pela memória do servidor. O Singleton resolve isso escondendo o construtor (tornando-o private) e liberando apenas um método estático (geralmente chamado de getInstance()) que sempre devolve a exata mesma instância da memória para quem pedir.
Gabarito: D
A alternativa correta é a D) Singleton.
O padrão Singleton (do grupo de padrões Criacionais do GoF) tem como objetivo principal garantir que uma classe tenha apenas uma instância durante toda a execução do programa, fornecendo um ponto de acesso global a ela.
- Factory Method: Foca em como os objetos são criados, delegando a responsabilidade para subclasses, não em restringir o número de instâncias.
- Builder: Utilizado para construir objetos complexos passo a passo.
- Observer: Um padrão comportamental para definir uma dependência um-para-muitos (notificações de mudanças de estado).
- Strategy: Foca em trocar algoritmos/comportamentos de forma dinâmica.
Resumo: Falou em "instância única" ou "único objeto" para um recurso compartilhado (como cache ou conexão de banco de dados), a resposta é Singleton.
letra d)
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/singleton
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo