Buscar

Padroes de Projeto de Software

Prévia do material em texto

Prezado (a) Aluno(a),
Você fará agora seu EXERCÍCIO DE FIXAÇÃO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha (3).
Após a finalização do exercício, você terá acesso ao gabarito. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS.
	
	
		1.
		O modelo GoF (Gang of Four) são padrões de projeto de software com 23 modelos (ou soluções) de soluções para o desenvolvimento de algoritmos baseados no paradigma orientado a objetos. Esses modelos são classificados em subcategorias com propósitos comuns. Sabendo disso, assinale apenas uma das opções abaixo que é uma afirmativa verdadeira sobre os padrões GoF:
		
	
	
	
	 
	Os modelos dos padrões GoF são agrupados em duas categorias, sendo-as: Padrões Estruturais e Padrões Comportamentais.
	
	
	Os modelos dos padrões GoF são agrupados em quatros categorias, sendo-as: Padrões de Criação, Padrões Estruturais, Padrões Organizacionais e Padrões Comportamentais.
	
	
	Os modelos dos padrões GoF são agrupados em três categorias, sendo-as: Padrões de Criação, Padrões Estruturais e Padrões Organizacionais.
	
	 
	Os modelos dos padrões GoF são agrupados em três categorias, sendo-as: Padrões de Criação, Padrões Estruturais e Padrões Comportamentais.
	
	
	Os modelos dos padrões GoF são agrupados em duas categorias, sendo-as: Padrões de Criação e Padrões Comportamentais.
	
	
	
		2.
		(CESGRANRIO - 2008 - BNDES - Profissional Básico - Especialidade - Análise de Sistemas) Ao alterar o estado de uma classe, o desenvolvedor deseja que uma ou mais classes da interface gráfica sejam modificadas. Entretanto, o desenvolvedor não acha interessante criar um acoplamento forte entre essas classes. Qual padrão de projeto comportamental é mais adequado para resolver essa situação?
		
	
	
	
	 
	Composite
	
	
	Adapter
	
	 
	Observer
	
	
	Decorator
	
	
	Abstract Factory
	
	
	
		3.
		Observando o diagrama de classes abaixo, verificamos a aplicação de um padrão de criação GOF.
Qual padrão foi utilizado para organizar as classes?
 
		
	
	
	
	
	State
	
	
	Strategy
	
	
	Singleton
	
	 
	Abstract Factory
	
	
	Template Method
	
	
	
		4.
		Relacione os padrões de projetos listados abaixo com suas respectivas finalidades:
PADRÕES DE PROJETO 
1. Facade (fachada) 
2. Decorator (decorador) 
3. Memento (lembrança) 
4. Proxy (procurador) 
5. Observer (observador) 
FINALIDADES
( ) Define uma dependência um para muitos entre objetos tal que, quando o estado de um objeto muda, todos os seus dependentes são notificados e atualizados automaticamente. 
( ) Fornece uma interface unificada para um conjunto de objetos que constituem um subsistema. Define uma interface de mais alto nível que torna o subsistema mais fácil de usar.
( ) Sem violar o encapsulamento, captura e exterioriza o estado interno de um objeto, tal que o objeto possa ser restaurado a este estado mais tarde. 
( ) Acrescenta responsabilidades adicionais a um objeto dinamicamente. Fornece uma alternativa flexível para a extensão de funcionalidade. 
( ) Controla o acesso a um objeto através de outro objeto, que atua como seu substituto, ou como um envoltório. Assinale a alternativa que indica a sequência correta, de cima para baixo.
		
	
	
	
	
	1 - 5 - 3 - 4 - 2
	
	
	3 - 5 - 1 - 4 - 2
	
	
	3 - 1 - 5 - 2 - 4
	
	 
	5 - 1 - 3 - 2 - 4
	
	
	5 - 1 - 3 - 4 - 2
	
	
	
		5.
		Podemos afirmar que os Padrões Estruturais da família GoF:
		
	
	
	
	
	Colocam em dúvida o tratamento dispensado aos usuários na fase de levantamento das necessidades.
	
	
	Fornecem um guia de como instanciar objetos, que normalmente envolve decisões dinâmicas para escolher, por exemplo, qual classe instanciar ou a quais objetos delegar responsabilidade.
	
	
	Aumentam a responsabilidade do programador em depurar o código e as rotinas necessárias à documentação dos processos.
	
	
	São projetados para organizar, gerenciar e combinar diferentes comportamentos.
	
	 
	Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.
	
	
	
		6.
		(CESGRANRIO - 2008 - TJ-RO - Analista Judiciário - Análise de Sistemas) 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:
		
	
	
	
	
	Singleton
	
	
	Decorator
	
	
	Strategy
	
	 
	Template Method
	
	 
	Abstract Factory
	
	
	
		7.
		Podemos afirmar que os Padrões de Criação da família GoF:
		
	
	
	
	
	São projetados para organizar, gerenciar e combinar diferentes comportamentos.
	
	 
	Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.
	
	
	Subutilizam as rotinas de tratamento de erros, em virtude da depuração de código fonte na fase de levantamento das necessidades junto aos usuários.
	
	 
	Fornecem um guia de como instanciar objetos, que normalmente envolve decisões dinâmicas para escolher, por exemplo, qual classe instanciar ou a quais objetos delegar responsabilidade.
	
	
	Colocam em dúvida o tratamento dispensado aos usuários na fase de levantamento das necessidades.
	
	
	
		8.
		Softwares são sequencias de instruções a serem seguidas ou executadas que solucionam problemas modelados através de algoritmos com documentação associada. Quando um desenvolver projeta um software ele deseja criar um programa com um mínimo de qualidade. Com base nesse pressuposto, qual única alternativa abaixo que um dos requisitos de qualidade esperado não se enquadra para software robusto desenvolvido:
		
	
	
	
	
	Maintenance (manutenção), Fault tolerance (tolerante a falhas), Secure (confiável ) e Stable (estável)
	
	
	Safe (seguro), Secure (confiável ) e Stable (estável)
	
	
	Safe (seguro), Maintenance (manutenção) e Optimized (otimizado)
	
	
	Maintenance (manutenção), Fault tolerance (tolerante a falhas) e Stable (estável)
	
	 
	Interpreter (interpretável) , Secure (confiável ) e Stable (estável)

Continue navegando