A equipe de desenvolvimento precisa criar um mecanismo para ...

Próximas questões
Com base no mesmo assunto
Q3885111 Engenharia de Software
A equipe de desenvolvimento precisa criar um mecanismo para garantir que o sistema de cache de documentos legislativos tenha apenas uma única instância ativa em toda a aplicação, de modo que todas as requisições acessem o mesmo recurso compartilhado, evitando inconsistência de dados.
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)
Alternativas

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