Buscar

AV 2015 PAdros de projeto de SW

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Avaliação: CCT0265_AV_» PADRÕES DE PROJETO DE SOFTWARE
	Tipo de Avaliação: AV
	�
	 ��1a Questão (Ref.: 201407945803)
	Pontos: 0,0  / 1,5
	) O padrão Façade aumenta o nível da codificação. A afirmação é falsa ou verdadeira? Explique.
	
	
Resposta: branco
	
Gabarito: Sim. Pois, esconde do programador detalhes do sistema. Por exemplo, para a realização de um cadastro, o mesmo não necessitará saber o nome do banco, nome da tabela, porta, url e sim oque deverá ser feito, no caso, o cadastro no banco.
	
	�
	 ��2a Questão (Ref.: 201408087673)
	Pontos: 0,0  / 1,5
	A implementação do padrão de projeto Chain of Responsability requer que cada objeto receptor de uma determinada solicitação tenha uma lógica para descrever os tipos de solicitação que é capaz de processar e como passar adiante aquelas que requeiram processamento por outros receptores. A delegação das solicitações pode formar uma árvore de recursão, com um mecanismo especial para inserção de novos receptores no final da cadeia existente.
Cite uma vantagem e uma desvantagem do padrão:
	
	
Resposta: branco
	
Gabarito: Vantagem: 
- O acoplamento é reduzido, pois, o padrão libera um objeto de ter que conhecer qual o outro objeto que trata de uma solicitação. Além disso, tanto remetente como receptor não têm conhecimento explícito um do outro; 
- Reduz a interconexão entre os objetos, ao invés de um objeto manter uma lista com todos os receptores candidatos, eles mantém uma referência única para o sucessor; 
- Flexibilidade na atribuição de responsabilidades, ou seja, pode-se mudar a cadeia de objetos em tempo de execução, adicionando ou removendo objetos. 
Desvantagem: receptação não é garantida, isto é, no momento que a requisição não tem um receptor explícito, não há garantias que ela será tratada, além disso, a cadeia precisa estar corretamente configurada, caso contrário, requisições podem não ser atendidas também. 
	
	�
	 ��3a Questão (Ref.: 201407467479)
	Pontos: 0,5  / 0,5
	Analise as sentenças abaixo sobre os grupos de padrões da família GoF e, em seguida, assinale a alternativa correta: 
I. Os Padrões Comportamentais são projetados para organizar, gerenciar e combinar diferentes comportamentos. Podemos citar os seguintes padrões pertencentes a esse grupo: Chain of Responsibility, Command e Interpreter. 
II. Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões estáticas para escolher, por exemplo, quais objetos instanciar ou a quais classes delegar responsabilidade. São doze os padrões de criação: Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Abstract Factory, Builder, Factory Method, Prototype e Singleton.
III. Os Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.
	
	
	Apenas as sentenças I e II estão corretas
	
	Apenas a sentença II está correta
	
	Apenas as sentenças II e III estão corretas
	
	Todas as sentenças estão corretas
	 
	Apenas as sentenças I e III estão corretas
	
	�
	 ��4a Questão (Ref.: 201407459954)
	Pontos: 0,5  / 0,5
	Considere as afirmativa abaixo sobre o padrão Builder: I ) É utilizado na instanciação de objetos complexos. II)É visto como um construtor especializado, que irá executar e avaliar diferentes regras de negócio e demais particularidades relacionadas com a criação de um novo objeto. III )A idéia é atribuir a responsabilidade de criação do objeto complexo a outra classe, esta classe irá armazenar todas as configurações e regras necessárias para a instanciação do novo objeto.
	
	
	As afirmativas I, II, III estão incorretas
	 
	As afirmativas estão todas corretas
	
	As afirmativas I, II, estão corretas e a afirmativa III está errada.
	
	As afirmativas I, III, estão corretas e II errada
	
	As afirmativas II, III estão corretas e a afirmativa I está errada.
	
	�
	 ��5a Questão (Ref.: 201408044598)
	Pontos: 0,0  / 0,5
	Construtores em Java definem uma maneira padrão de construir objetos. No entanto, depender de construtores para instanciar objetos pode nos levar a alguns problemas dos quais podemos citar, exceto:
	
	
	Usando diretamente os métodos construtores não há como limitar o número de instâncias criadas
	
	Cliente pode não ter ou não saber todos os dados necessários para instanciar um objeto através de construtores
	 
	Objeto complexo pode necessitar da criação de objetos menores previamente, com certo controle difícil de implementar com construtores
	 
	Não é preciso saber a classe concreta do objeto para criá-lo
	
	A aplicação cliente fica acoplada diretamente a uma implementação concreta para poder usar diretamente o construtor
	
	�
	 ��6a Questão (Ref.: 201407949813)
	Pontos: 0,0  / 0,5
	Que padrão estrutural usa compartilhamento para suportar um grande número de pequenos objetos de forma eficiente.
	
	 
	Flyweight
	
	Decorator
	 
	Composite
	
	Bridge
	
	Facade
	
	�
	 ��7a Questão (Ref.: 201407470514)
	Pontos: 0,0  / 0,5
	(CESGRANRIO - 2008) Muitos frameworks utilizam um padrão de projeto (design pattern) que se baseia no princípio de projeto "Não nos chame, nós iremos chamar você" (O Princípio de Hollywood: "Don't call us, we'll call you."). Uma classe da aplicação herda de uma classe do framework que possui métodos abstratos, os quais são chamados em outros métodos concretos. A classe da aplicação sobrepõe os métodos abstratos da classe do framework com métodos concretos, permitindo que os métodos concretos da classe do framework sejam chamados. 
O padrão de projeto (design pattern) em questão chama-se
	
	
	Strategy.
	 
	Template Method.
	 
	Abstract Factory.
	
	Singleton.
	
	Decorator.
	
	�
	 ��8a Questão (Ref.: 201407477805)
	Pontos: 0,0  / 0,5
	Considere a seguinte definição: 
"Define um objeto que encapsula o modo como um conjunto de objetos interage. Promove um acoplamento fraco entre objetos, evitando que referenciem diretamente um ao outro e permitindo que se possa variar a interação entre eles de modo independente.(Gamma et al., 2000)"
Marque a alternativa que indica o nome do padrão relacionado:
	
	 
	Observer
	
	Singleton
	
	Prototype
	
	Strategy
	 
	Mediator
	
	�
	 ��9a Questão (Ref.: 201407468909)
	Pontos: 1,0  / 1,0
	considere a definição: Visitor: Representar uma operação a ser realizada nos elementos de uma estrutura de objetos. Visitor permite que você defina uma nova operação sem alterar as classes dos elementos nos quais a operação atua (Gamma et al., 2000). Qual das alternativas é completamente verdadeira?
	
	
	O padrão de projeto acima deve ser utilizado não somente quando o comportamento de um objeto depende do seu estado, podendo ser alterado em tempo de execução, mas também quando a funcionalidade de um objeto possui condicionais grandes.
	
	O principal objetivo do padrão acima é conservar as funcionalidades em não se permita adicionar novas, E obriga que haja necessidade de alterar sua implementação
	 
	O principal objetivo do padrão acima é permitir que sejam adicionadas novas funcionalidades a classes previamente concebidas, sem que haja necessidade de alterar sua implementação.
	
	A idéia principal do padrão acima é implementar diferentes algoritmos em uma hierarquia de classes, onde cada um deles pode ser substituído por outro, independente do cliente que o utiliza.
	
	O padrão de projeto acima é indicado para ser utilizado quando uma abstração tem dois aspectos, um dependente do outro. Encapsular tais aspectos em objetos separados permite que variem e sejam reusados separadamente;
	
	�
	 ��10a Questão (Ref.: 201408090027)
	Pontos: 0,0/ 1,0
	Um padrão controlador é o primeiro objeto além da camada de interface com o usuário que é responsável por receber ou tratar uma mensagem de operação do sistema, Este é um padrão de projeto de delegação, pois, normalmente um controlador deve delegar a outros objetos o serviço que precisa ser feito. Dentre os conceitos abaixo, assinale aquele que complementa o objtivo deste padrão.
	
	 
	ele controla ou coordena os métodos;
	 
	ele coordena ou controla a atividade;
	
	ele coordena ou controla a recursividade;
	
	ele coordena ou controla as classes;
	
	ele coordena ou controla as generalizações;

Outros materiais