Com base nessa situação hipotética, julgue o item a seguir, ...

Próximas questões
Com base no mesmo assunto
Ano: 2015 Banca: CESPE / CEBRASPE Órgão: MEC Prova: CESPE - 2015 - MEC - Desenvolvedor |
Q602390 Arquitetura de Software
      Considere que, em um documento de requisitos, foram elencadas as seguintes necessidades a serem supridas por meio de padrões de projeto:

I    implementar um padrão de criação que possibilite a separação entre a construção de um objeto complexo e sua representação de modo que esse processo de construção possa criar diferentes representações;

II    implementar um padrão que evite vínculo permanente entre uma abstração e sua implementação;

III    implementar um padrão que, sem violar o encapsulamento e a captura, externalize o estado interno de um objeto e permita que posteriormente ele seja restaurado a esse estado;

IV    implementar um padrão que permita a variação do algoritmo independentemente dos clientes que o utilizam;

V    implementar um padrão que forneça uma interface unificada para um conjunto de interfaces em um subsistema;

VI    implementar um padrão que especifique os tipos de objetos a serem criados usando uma instância prototípica e crie novos objetos copiando este novo protótipo.
Com base nessa situação hipotética, julgue o item a seguir, com relação aos padrões de projeto.

O padrão builder atende corretamente o que se pede em I.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C - certo

A questão aborda o entendimento do padrão de projeto Builder, que é um dos padrões de criação descritos no livro "Design Patterns: Elements of Reusable Object-Oriented Software", por Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides, muitas vezes referidos como o "Gang of Four" (GoF). Este padrão tem como objetivo principal desacoplar a construção de um objeto complexo de sua representação, permitindo que o mesmo processo de construção possa gerar diferentes representações.

No contexto da questão, o Builder se encaixa perfeitamente na necessidade I, que é a separação entre a construção de um objeto complexo e sua representação. Isso é feito de tal forma que o mesmo processo de construção pode ser reutilizado para criar diferentes representações do objeto.

O uso do Builder envolve tipicamente um Diretor e um Construtor. O Diretor é responsável por controlar o processo de construção, e o Construtor fornece uma interface para criar as partes do objeto complexo. Os clientes do Builder não precisam conhecer a representação interna do produto que está sendo construído. Dessa forma, o Builder permite que você varie a representação interna do produto, o que é útil quando o algoritmo de montagem de um objeto complexo deve ser independente das partes que compõem o objeto e de como elas são montadas.

A alternativa está correta (C), pois o padrão Builder atende ao requisito de implementar um padrão de criação que facilita a separação entre a construção e a representação de um objeto complexo, permitindo assim que diferentes representações possam ser criadas.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

 Builder = construção/objeto complexo

c-

Builder separa a costrução de um objeto complexo de sua representação, embora alguns processes podem ter representações distintas.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo