Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fechar Avaliação: CCT0152_AV_ » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 2,0 Nota de Partic.: 1 Data: 23/06/2015 08:07:25 1 a Questão (Ref.: 201001723484) Pontos: 0,0 / 1,5 Explique se há e como é o problema que o padrão FactoryMethod ainda não consegue resolver. Resposta: Gabarito: Há o seguinte problema. Mesmo estruturando uma fabrica de criação de objetos concretos, o cliente ainda tem que saber qual a classe concreta deverá ser criada. 2 a Questão (Ref.: 201001265291) Pontos: 0,0 / 1,5 O padrão mediador gerencia a comunicação entre objetos evitando que os objetos se comuniquem de forma direta. Diante dessa afirmativa, qual a maior vantagem que esse padrão apresenta? Resposta: Gabarito: o fato de que facilita a mudança de comportamento sem a necessidade de alterar as classes envolvidas. 3 a Questão (Ref.: 201001170058) Pontos: 0,5 / 0,5 Segundo Metsker, o padrão de projeto GoF _________________ é aplicado para substituir a geração de instâncias não-inicializadas de uma classe, fornecendo novos objetos a partir de uma classe-exemplo. MEDIATOR. PROTOTYPE. BUILDER. SINGLETON. FACTORY METHOD. 4 a Questão (Ref.: 201001726999) Pontos: 0,5 / 0,5 Quanto aos design patterns, é correto afirmar que: são projetos concretos que incluem detalhes de implementação. a UML pode ser utilizada para representar frameworks, mas não é tão ampla ao ponto de oferecer suporte à representação dos design patterns. descrevem melhores práticas, bons projetos, e captam a experiência de uma maneira possível de ser usada por outros. o maior problema com a utilização dos design patterns é que eles não suportam o uso de ferramentas CASE e podem trazer erros provenientes da percepção de quem os criou. são conjuntos de classes abstratas e concretas que podem ser adaptadas e ampliadas para criar sistemas de aplicações. 5 a Questão (Ref.: 201001140496) Pontos: 0,5 / 0,5 Um dos princípios do padrão de arquitetura MVC é a separação da lógica da apresentação do modelo. PORQUE É, muitas vezes, mais prático manter a visão e o controlador unificados, inclusive, por demandas da tecnologia. Analisando-se as afirmações acima, conclui-se que ... . a primeira afirmação é verdadeira, e a segunda é falsa. a primeira afirmação é falsa, e a segunda é verdadeira. as duas afirmações são verdadeiras, e a segunda não justifica a primeira. as duas afirmações são verdadeiras, e a segunda justifica a primeira. As duas afirmações são falsas 6 a Questão (Ref.: 201001710038) Pontos: 0,0 / 1,0 São responsabilidades do GRASP? Tratar a estrutura parte-todo (Composite) Tratar instanciamento único (Singleton) Alta coesão das classes Tratar o polimorfismo Baixo acoplamento das classes 7 a Questão (Ref.: 201001140495) Pontos: 0,5 / 0,5 Para fazer a modelagem de um padrão de projeto (design pattern) utilizando a UML é DESNECESSÁRIO. fazer a modelagem do mecanismo como uma colaboração, fornecendo seus aspectos estruturais, assim como os aspectos comportamentais. identificar as soluções comuns para o problema básico. identificar os elementos do padrão de projeto que devem ser vinculados aos elementos em um contexto específico e representá-los como parâmetros para colaboração. identificar as soluções específicas e particulares para o problema básico e reificá-la como um mecanismo. entender o padrão de projeto como uma colaboração representada com suas partes estruturais e comportamentais. 8 a Questão (Ref.: 201001170034) Pontos: 0,0 / 0,5 Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro autores, os Padrões GoF (Group of Four) estão divididos pelos seguintes famílias de padrões: Padrões de Criação ou de Construção, Padrões Estruturais e Padrões Comportamentais. Considerando os padrões de Criação ou de Construção, analise o modelo abaixo e em seguida marque a alternativa que define a representação. Facade. Factory Method. Singleton. Builder. Mediator. 9 a Questão (Ref.: 201001178384) Pontos: 0,0 / 0,5 Iterator :Fornecer uma maneira de acessar seqüencialmente os elementos de um objeto agregado sem expor sua implementação. (Gamma et al., 2000). Sobre este padrão de projetos podemos afirma com certeza: É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais objetos tem uma grande facilidade de mudança de comportamento, pode-se alterar seu funcionamento sem que seja necessário nenhuma mudança nas demais classes envolvidas, desde que envolvam coleções e matrizes. Considerando objetos que implementam arrays, pode ser visto como uma classe intermediária de comunicação e gerenciamento, evitando que os objetos se comuniquem de forma direta Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de implementação. É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais objetos, mas não deve ser usado quando associado a percorrer arrays ou tabelas. 10 a Questão (Ref.: 201001181697) Pontos: 0,0 / 1,0 (CESPE 0 2007) Considerando a figura, que apresenta um diagrama de relacionamento entre os padrões de projeto descritos no livro GoF Book, julgue os próximos itens acerca dos conceitos de programação orientada a objetos e padrões de projetos orientados a objetos. I A implementação de padrões de projeto criacionais em linguagens como C#, Delphi e Java sempre envolverá a alocação de memória para a criação de objetos. II A implementação de montadores de árvores sintáticas apóia-se mais no uso do padrão Singleton que no uso do padrão Composite. III A implementação de tratadores de eventos de interface gráfica apóia-se mais no uso do padrão Observer que no uso do padrão Visitor. IV A implementação de famílias portáveis de componentes de interface gráfica depende mais do emprego do padrão Chain of Responsibility que do padrão AbstractFactory. V O padrão TemplateMethod é mais simples que o padrão Memento. Estão certos apenas os itens I, III e V. II, III e IV. I, IV e V. I, II e IV. II, III e V. Período de não visualização da prova: desde 12/06/2015 até 25/06/2015.
Compartilhar