Buscar

SIMULADO 1 PADRÕES DE PROJETO DE SOFTWARE

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

Prévia do material em texto

SIMULADO 1 PADRÕES DE PROJETO DE SOFTWARE
	
	Simulado: CCT0152_SM_201002070686 V.1 
	VOLTAR
	Aluno(a): ALAN DA SILVA
	Matrícula: 201002070686 
	Desempenho: 2,0 de 8,0
	Data: 17/09/2013 15:36:59 (F)
	
	 1a Questão (Ref.: 200572742407)
	Pontos: 0,0  / 1,0 
	Para fazer a modelagem de um padrão de projeto (design pattern) utilizando a UML é DESNECESSÁRIO.
		
	
	entender o padrão de projeto como uma colaboração representada com suas partes estruturais e comportamentais. 
	
	fazer a modelagem do mecanismo como uma colaboração, fornecendo seus aspectos estruturais, assim como os aspectos comportamentais. 
	
	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 comuns para o problema básico. 
	
	identificar as soluções específicas e particulares para o problema básico e reificá-la como um mecanismo. 
	
	
	 2a Questão (Ref.: 200572718484)
	Pontos: 1,0  / 1,0 
	Podemos afirmar que padrões de projeto de software: 
		
	
	invariavelmente pioram a documentação e a manutenção dos sistemas.
	
	difcultam a reutilização de projetos e arquiteturas bem sucedidas.
	
	dificultam de alguma foram a escolha de alternativas de projeto que tornam um sistema reutilizável, aumentando as alternativas que a comprometam.
	
	não influenciam nos procedimentos, regras e práticas relativas às técnicas orientadas a objetos. 
	
	permitem descrever fragmentos de projeto e reusar idéias de projeto, ajudando desenvolvedores a se nivelar com a experiência de outros. 
	
	
	 3a Questão (Ref.: 200572703244)
	Pontos: 1,0  / 1,0 
	O padrão Variações protegidas tem como característica:
		
	
	É um principio básico para fornecer flexibilidade e proteção contra diversos tipos de variações em um projeto orientado a objetos, tais como: variações nos dados, comportamento, hardware, componentes de software, sistemas operacionais, entre outros.
	
	Sugere atribuir um conjunto de responsabilidades altamente coesa a uma classe artificial ou de conveniência que não represente o domínio do problema, algo inventado, para apoiar coesão alta, acoplamento baixo e reuso.
	
	é 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. 
	
	O objetivo é atribuir responsabilidade a um objeto intermediário para servir como mediador entre outros componentes ou serviços, para que eles não sejam diretamente acoplados.
	
	implica que um componente ou classe encapsule somente os atributos e operações muito relacionadas a si e com a classe do componente ou classe propriamente dito. 
	
	
	 4a Questão (Ref.: 200572703296)
	Pontos: 0,0  / 1,0 
	Considere a figura abaixo
E escolha a opção correta sobre a gravura:
		
	
	A Classe instanciada assinala como :???? É de baixo acoplamento e baixa coesão pela natureza de sua criação.
	
	A Classe instanciada assinalada como :???? Não pode ser decomposta em outros controladores. Assim temos que trabalhar com o tipo de coesão resultante (temporal, funcional...)
	
	A classe instanciada assinalada como :???? Permite desacoplar as classes e métodos de apresentação. E isto aumenta a reutilização das classes de negocio.
	
	uma classe de controle exige que sempre se tem há uma classe de apresentação. Desta forma não podemos ter mais de uma classe de controle por sistema
	
	A Classe instanciada assinalada como :???? Deveria estar incorporada na classe emprestar para evitar criar uma serie de novas classes. Isto facilita o projeto.
	
	
	 5a Questão (Ref.: 200572703427)
	Pontos: 0,0  / 1,0 
	Selecione a opção totalmente correta da responsabilidade correta para o do padrão GRASP Criador:
		
	
	Tem a seguinte responsabilidade de fazer, pois sua funcionalidade está relacionado com a resposta a seguinte pergunta: quem deve criar um objeto A.
	
	Tem a responsabilidade de como primeira atividade procura-se objetos de software existentes que satisfaçam os métodos necessários para a criação do objeto. Uma criação fica definida pela definida pela própria classe alocando-se o método.
	
	A responsabilidade é definida pelo programador baseado nos métodos solicitados pela classe que está sendo criada.
	
	O padrão de projeto está interessado no algoritmo de criação, e a determinar qual classe dever ser responsável pelo uso de um novo método referente a classe inicial.
	
	Tem a seguinte responsabilidade de responder de maneira intuitiva por um programador ou analista de sistema, baseado nas interação e nos métodos menos utilizados, desta forma otimizando a criação.
	
	
	 6a Questão (Ref.: 200572703277)
	Pontos: 0,0  / 1,0 
	Marque a alternativa que representa o padrão GRASP que está relacionada com a seguinte questão: como projetar objetos e subsistemas de modo que variações não causem impactos indesejados?
		
	
	Indireção
	
	Controlador
	
	Variações Protegidas
	
	Polimorfismo
	
	Invenção Pura
	
	
	 7a Questão (Ref.: 200572703421)
	Pontos: 0,0  / 1,0 
	considere as classes e métodos abaixo: E escolha a opção correta sobre a gravura: E escolha a opção correta sobre a gravura: 
sobre o acoplamento e coesão :
		
	
	Existem acoplamentos que poderiam ser evitados, considerando apenas o diagrama, assim o método de imprimir nota fiscal, dando-se o código de cliente, pode ser mapeado de forma diferente melhorando-se o acoplamento.
	
	Existem acoplamentos das classes cliente e Nota fiscal. E Nota fiscal e Item de Nota fiscal. Esta forma de acoplamento é caracterizado por chamada de métodos.
	
	O método void imp_NF (cod) poderia ser implementado na classe NF sem envolver mais nenhuma classe. Não tendo outros médotos o acoplamento não existiria o que é o desejável.
	
	método void imp_NF (cod) não deve ser implementado na classe NF. Obteria-se um projeto melhor se NF fosse acoplada a classe Cliente seus métodos incorporados na classe cliente. Pode-se garantir um melhor acoplamento
	
	Existem acoplamentos das classes que foram gerados de forma desnecessária pois poderiam ser incorporados em um único método e isto iria facilitar a manutenção e o entendimento.
	
	
	 8a Questão (Ref.: 200572703442)
	Pontos: 0,0  / 1,0 
	considere a definição: O padrão Strategy define uma família de algoritmos , encapsula cada um deles , e torna-os intercambiáveis, permitindo assim que os algoritmos variem independentemente dos clientes que os utilizam (Gamma et al., 2000). Qual das alternativas é completamente verdadeira? 
		
	
	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 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 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 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;
	
	
	 9a Questão (Ref.: 200572617606)
	
	O uso de classes "statics" garante que somente uma instãncia estará em memória e que a destruição pelo "garbage collection" será mais rápida do que o uso do padrão singleton. Por que então devemos usar o padrão singleton? 
		
	
Sua Resposta: 
	
Compare com a sua resposta: Porque uma classe ¿static¿ SEMPRE é carregada na memória quando a aplicação é executada e a classesingleton não, sendo carregada na memória quando solicitada a primeira instância.
	
	
	 10a Questão (Ref.: 200572617603)
	
	Decorator tem como principal objetivo a decoração de classes em tempo de execução, isto é, adicionar novos produtos e/ou novas responsabilidades à objetos dinamicamente sem alterar o código das classes existentes. Descreva um exemplo que represente esse padrão.
		
	
Sua Resposta: 
	
Compare com a sua resposta: Em uma janela pode-se adicionar objetos como barras de rolagem, caixas de texto, labels, etc. Pode-se criar uma classe JanelaDecorador que será estendida pelos decoradores que irão inserir propriedades na janela. Podendo incluir barra vertical, horizontal e para cada criar outra classe decorador, inserindo características novas

Continue navegando