Sapien IA
Computação Múltipla Escolha

Assinale o padrão que utiliza uma fábrica de objetos de modo a gerenciar a instanciação e o compartilhamento de objetos imutáveis utilizados em larga escala em um sistema:

Assinale o padrão que utiliza uma fábrica de objetos de modo a gerenciar a instanciação e o compartilhamento de objetos imutáveis utilizados em larga escala em um sistema:

  1. Proxy
  2. Flyweight
  3. Facade
  4. Composite
  5. Adapter

Resolução completa

Explicação passo a passo

B
Alternativa B

Alternativa B - Flyweight

O padrão Flyweight é utilizado especificamente para otimizar o uso de memória quando há uma necessidade de criar muitos objetos semelhantes. Ele funciona compartilhando partes comuns de estado entre os objetos, permitindo que eles sejam reutilizados em vez de criados do zero.

Análise Detalhada

Para entender por que a alternativa B é a correta, precisamos decompor os requisitos do enunciado:

  • Gerenciamento de instanciação: O padrão utiliza uma FlyweightFactory que mantém uma coleção de objetos flyweight prontos para serem retornados, evitando a criação desnecessária de novas instâncias.
  • Compartilhamento de objetos imutáveis: Os dados compartilhados dentro dos objetos flyweight devem ser imutáveis. Se o estado fosse mutável, o compartilhamento causaria efeitos colaterais indesejados entre os objetos que usam a mesma referência.
  • Uso em larga escala: Este padrão é ideal para cenários onde milhares ou milhões de objetos são necessários (como caracteres em um editor de texto ou árvores em um jogo), onde cada nova instância consome memória significativa.

Comparação com as outras alternativas:

PadrãoFunção PrincipalPor que não se encaixa
ProxyControla o acesso a um objetoFoca em segurança ou lazy loading, não em compartilhar estado interno.
FacadeSimplifica interfaces complexasOferece uma interface única para subsistemas, não gerencia criação de objetos.
CompositeEstrutura hierárquicaPermite tratar objetos individuais e composições uniformemente.
AdapterCompatibiliza interfacesConverte a interface de uma classe para outra compatível.

Conclusão

O padrão Flyweight é a única opção que descreve explicitamente a gestão de objetos através de uma fábrica para fins de compartilhamento e economia de memória, garantindo que objetos imutáveis sejam reutilizados eficientemente.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.