Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: CCT0265_AV_201201020492 » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: 201201020492 - JOAO PAULO SILVA DOS SANTOS Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 6,0 Nota de Partic.: 1 Data: 07/06/2014 09:12:52 1a Questão (Ref.: 201201226717) Pontos: 1,5 / 1,5 Padrões de projeto estão relacionados a diferentes níveis de abstração no desenvolvimento de aplicações orientadas a objetos, podendo aparecer ao longo de todo ciclo de vida de um sistema. Os padrões são diversos, por exemplo, padrões arquiteturais, padrões de análise, padrões de projeto e padrões de código e padrões estruturais. Explique o que são padrões estruturais e dê exemplo de dois deles. Resposta: Padrões Estruturais são padrões de projetos voltados para o desenvolvimento de objetos que envolve a estrutura de um sistema. Adapter - Voltado para correção de incosistências entre interfaces. Bridge - Apresenta uma conexão entre uma abstração e suas possíveis implementações. Gabarito: Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mutua. Há sete padrões estruturais GoF: Adapter, Bridge, Composite, Decorator, Façade, Flyweight e Proxy. 2a Questão (Ref.: 201201148087) Pontos: 1,5 / 1,5 Ter uma baixa coesão nos objetos do sistema pode gerar difícil compreensão e reutilização, além de afetar a manutenibilidade. O que é ter baixa coesão ? Resposta: A baixa coesão significa uma implementação de objetos com baixa coerência que propicia dificuldade na manutenção do sistema, acarretando frequentes problemas em seu uso, comprometendo seu ciclo de vida e gerando altos custos. Gabarito: É quando se tem uma mesma classe executando muitos trabalhos, realizando muitas coisas não relacionadas. 3a Questão (Ref.: 201201141584) Pontos: 0,0 / 0,5 (CESGRANRIO - 2009) Por motivo de segurança, deseja-se adicionar registro (log) das operações efetuadas no sistema de contabilidade de uma empresa. O arquiteto do sistema decide que deve existir somente uma instância de uma classe de registro (log) e que esta será o ponto de acesso global para os demais componentes do sistema. Que padrão de projeto pode ser utilizado nesse caso? Bridge. Memento. Iterator. Visitor. Singleton. 4a Questão (Ref.: 201201139278) 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 é 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; 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 Page 1 of 3BDQ Prova 18/06/2014http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp objeto possui condicionais grandes. 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. 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 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. 5a Questão (Ref.: 201201139450) Pontos: 1,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? Variações Protegidas Indireção Polimorfismo Controlador Invenção Pura 6a Questão (Ref.: 201201137874) Pontos: 0,5 / 0,5 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. 5 - 1 - 3 - 2 - 4 3 - 5 - 1 - 4 - 2 3 - 1 - 5 - 2 - 4 5 - 1 - 3 - 4 - 2 1 - 5 - 3 - 4 - 2 7a Questão (Ref.: 201201141579) Pontos: 0,5 / 0,5 (CESGRANRIO - 2009) Ao consultar informações a respeito dos padrões de projeto Adapter e Bridge, um Analista de Sistemas identificou uma afirmativa INCORRETA. Assinale-a. O foco do Adapter é a solução de incompatibilidades entre duas interfaces existentes. O Bridge estabelece uma ponte entre uma abstração e suas possíveis implementações. Ambos promovem a flexibilidade ao fornecer um nível de endereçamento indireto para outro objeto. O Adapter é inferior ao Bridge porque não evita a replicação de código. Ambos são padrões estruturais que possuem alguns atributos em comum. 8a Questão (Ref.: 201201140915) Pontos: 0,0 / 0,5 (CONSULPLAN - 2012) O desenvolvimento de software é uma atividade que apresenta dificuldades, ligada ao entendimento do problema. Design Patterns surgiram na busca de soluções para as dificuldades, tornando-se um mecanismo eficiente no compartilhamento de conhecimento entre os desenvolvedores. Gamma propõe um modo de categorização dos DESIGN PATTERNS, definindo famílias de padrões relacionados, descritos a seguir. I. Abrange a configuração e inicialização de objetos e classes. Page 2 of 3BDQ Prova 18/06/2014http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp II. Lida com as interfaces e a implementação das classes e dos objetos. III. Lida com as interações dinâmicas entre grupos de classes e objetos. Essas famílias são denominadas, respectivamente, Creational Patterns, Structural Patterns e Behavioral Patterns. Standard Patterns, Creational Patterns e Structural Patterns. Behavioral Patterns, Structural Patterns e Standard Patterns. Structural Patterns, Standard Patterns e Creational Patterns. Standard Patterns, Structural Patterns e Behavioral Patterns. 9a Questão (Ref.: 201201130321) Pontos: 0,0 / 0,5 considerando a classe de projetos GoF assinale a opção cujos padrões de projeto estão todos classificados como Estruturais: adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; singleton singleton; bridge ; composite; decorator ; faça de ; flyweight;¿ Proxy singleton; bridge ; protype; decorator ; faça de ; flyweight ; Proxy adapter ; bridge ; protype ¿ decorator ; faça de ; flyweight ; singleton adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; Proxy 10a Questão (Ref.: 201201129870) Pontos: 0,0 / 0,5 Segundo Metsker, 2004, o padrão de projeto ______________ tem como solução mover a lógica de construção de uma classe para um objeto externo, a fim de reduzir a complexidade da mesma e permitir a construção gradual de objetos-alvo a partirdessa classe. Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima. FACTORY METHOD. MEDIATOR. SINGLETON. BUILDER. FACADE. Período de não visualização da prova: desde 30/05/2014 até 16/06/2014. Page 3 of 3BDQ Prova 18/06/2014http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp
Compartilhar