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 |
Q602391 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 estrutural bridge resolve corretamente o que se pede em II.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Vamos analisar a questão que envolve a aplicação de padrões de projeto. A alternativa correta é a que afirma que o padrão estrutural Bridge resolve corretamente o que se pede em II.

Entendimento da Alternativa Correta:

A alternativa II pede um padrão que evite vínculo permanente entre uma abstração e sua implementação. O padrão de projeto estrutural Bridge é ideal para isso. Ele permite que você separe a abstração de sua implementação de modo que ambos possam variar independentemente. Em outras palavras, o Bridge desacopla a interface de abstração da interface de implementação, permitindo que elas mudem sem afetar uma à outra. Isso é perfeito para cenários onde você quer evitar vínculos permanentes.

Análise das Alternativas Incorretas:

Para entender por que as outras alternativas não se aplicam, vamos analisar os outros itens mencionados na questão:

I - Padrão de Criação:

O item I descreve um padrão que possibilite a separação entre a construção de um objeto complexo e sua representação. Esse é o papel do padrão Builder. O Builder segue exatamente essa premissa, separando a construção de um objeto da sua representação.

III - Externalização do Estado:

O item III fala sobre externalizar o estado interno de um objeto e permitir restaurar esse estado posteriormente. O padrão que realiza isso é o Memento. O Memento captura e externaliza o estado interno de um objeto sem violar o encapsulamento, permitindo a restauração futura.

IV - Variação do Algoritmo:

O item IV aborda a variação do algoritmo de forma independente dos clientes que o utilizam. O padrão que se encaixa aqui é o Strategy. O Strategy permite definir uma família de algoritmos, encapsulá-los e torná-los intercambiáveis, permitindo que o algoritmo varie independentemente dos clientes que o utilizam.

V - Interface Unificada:

O item V menciona fornecer uma interface unificada para um conjunto de interfaces em um subsistema. O padrão que resolve isso é o Facade. O Facade oferece uma interface simplificada para um conjunto de interfaces de um subsistema, facilitando a interação com o sistema complexo.

VI - Criação de Objetos a partir de Protótipos:

O item VI fala sobre especificar tipos de objetos a serem criados usando uma instância prototípica e criar novos objetos copiando o protótipo. Este é o padrão Prototype. O Prototype permite criar novos objetos copiando uma instância prototípica.

Portanto, a alternativa C está correta ao afirmar que o padrão estrutural Bridge resolve corretamente o que se pede no item II, que é evitar o vínculo permanente entre uma abstração e sua implementação.

Espero que essa explicação tenha elucidado as razões pelas quais a alternativa correta é a C e por que os outros itens não se aplicam ao padrão Bridge.

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

Bridge

 

Intenção:

 

Desacoplar uma abstração da sua implementação, de modo que as duas possam variar independentemente.

 

Ou seja, o Bridge fornece um nível de abstração maior que o Adapter, pois são separadas as implementações e as abstrações, permitindo que cada uma varie independentemente

 

FONTE: https://brizeno.wordpress.com/2011/10/13/mao-na-massa-bridge/

2011

Desacoplar uma abstração de sua implementação para que ambas possam variar independentemente é uma das funções do Bridge

certa

 

A BRIDGE é uma "PONTE LEVADIÇA" .....

ABSTRAÇÃO_____________/ \______________IMPLEMENTAÇÃO

.....que separa a abstração da implementação para que possam variar independentemente.

Clique para visualizar este comentário

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