Filtrar


Questões por página:
Acerca dos padrões GRASP, julgue os itens a seguir.

O padrão Don’t Talk to Strangers é utilizado para fortalecer o polimorfismo, realizado pelo padrão Polymorphism. O objetivo de ambos os padrões é substituir um componente sem afetar outro componente, embora o primeiro implemente o polimorfismo em nível de classe e o segundo lide com alternativas embasadas no tipo de componente.
Acerca dos padrões GRASP, julgue os itens a seguir.

O padrão Indirection é utilizado para atribuir responsabilidades à classe que tiver a informação necessária para satisfazer a responsabilidade
Acerca dos padrões GRASP, julgue os itens a seguir.

Nos casos em que a solução oferecida pelo padrão Expert violar a alta coesão e o baixo acoplamento, o padrão adequado a ser aplicado será o Creator, que atribui um conjunto altamente coesivo de responsabilidades a uma classe artificial que não representa um conceito do domínio do problema.
Acerca dos padrões GRASP, julgue os itens a seguir.

O padrão Pure Fabrication objetiva designar a responsabilidade unívoca pela criação de uma nova instância de uma classe.

Deseja-se que uma aplicação possa manipular diferentes tipos de bancos de dados de modo transparente às classes que necessitam de serviços de acesso a dados. Inicialmente será necessário fornecer suporte a bancos de dados XML e SQL, entretanto novos tipos poderão ser futuramente adicionados.

A solução proposta é a seguinte:

1. Uma classe abstrata (DB) será responsável por instanciar um objeto correspondente ao tipo de banco de dados desejado. Isso será feito através do método estático getDB(), que irá retornar um objeto de uma de suas subclasses concretas, de acordo com o parâmetro (tipo) passado.

2. O objeto criado no passo anterior irá instanciar conexões e consultas correspondentes ao tipo de DB criado; isto é, caso um DB XML tenha sido instanciado, apenas consultas XML e conexões XML serão instanciadas; caso um DB SQL tenha sido instanciado, apenas consultas SQL e conexões SQL serão instanciadas.

O diagrama de classe a seguir ilustra a estrutura descrita acima.



Qual padrão de projeto foi utilizado na solução proposta?