Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 6,5 Nota de Partic.: 1 Data: 22/11/2014 10:27:58 1a Questão (Ref.: 201408270068) Pontos: 1,0 / 1,0 Marque a alternativa que apresenta apenas padrões GRASP? Observer, visitor, strategy Controlador, polimorfismo e Memento Coesão alta, polimorfismo, visitor Coesão alta, controlador, strategy Coesão alta, controlador e polimorfismo 2a Questão (Ref.: 201408272297) Pontos: 0,5 / 0,5 (FCC 2011) Os design patterns são de uso exclusivo em processos de desenvolvimento de soluções orientado a objetos, já que os objetos são a mais adequada abstração para o reúso. podem ser modelados utilizando se a linguagem UML que fornece um meio eficiente de modelar pa drões de projeto representando os como colaborações. são projetos de arquitetura para um domínio específico de aplicação e sempre trazem componentes predefinidos que envolvem código de programação. consistem em conjuntos de classes que um usuário instancia para utilizar seus métodos. Após a chamada ao método, o controle do fluxo da aplicação retorna para o usuário. são aplicações propriamente ditas, normalmente construídas pela integração de diversos frameworks. 3a Questão (Ref.: 201408231101) 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 ... . as duas afirmações são verdadeiras, e a segunda não justifica a primeira. a primeira afirmação é falsa, e a segunda é verdadeira. As duas afirmações são falsas a primeira afirmação é verdadeira, e a segunda é falsa. as duas afirmações são verdadeiras, e a segunda justifica a primeira. 4a Questão (Ref.: 201408231100) Pontos: 0,5 / 0,5 Para fazer a modelagem de um padrão de projeto (design pattern) utilizando a UML é DESNECESSÁRIO. identificar as soluções comuns para o problema básico. 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. entender o padrão de projeto como uma colaboração representada com suas partes estruturais e comportamentais. identificar as soluções específicas e particulares para o problema básico e reificá la como um mecanismo. 5a Questão (Ref.: 201408260639) Pontos: 0,5 / 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. Builder. Facade. Singleton. Mediator. Factory Method. 6a Questão (Ref.: 201408260663) 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. PROTOTYPE. SINGLETON. BUILDER. FACTORY METHOD. MEDIATOR. 7a Questão (Ref.: 201408268989) Pontos: 0,5 / 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, mas não deve ser usado quando associado a percorrer arrays ou tabelas. 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. Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de implementação. 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 É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais objetos 8a Questão (Ref.: 201408355904) Pontos: 1,5 / 1,5 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. Resposta: Numa janela pode haver vários objetos como barra de rolagem, caixas de texto, etc. É possível acrescentar mais objetos nessa janela criando por exemplo uma classe JanelaDecorador. Gabarito: 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. 9a Questão (Ref.: 201408278911) Pontos: 0,0 / 1,5 Utilizar o princípio CRIADOR significa suportar baixo acoplamento, maior clareza, encapsulamento e reusabilidade. Em que consiste o princípio CRIADOR? Resposta: Consiste na criação de programas simples, claros, reutilizáveis e fáceis de fazer a manutenção. Gabarito: Consiste em atribuir responsabilidade de criação. Atribua à classe B a responsabilidade de criar uma instância de A se: B agrega objetos de A; B contém objetos de A; B armazena instâncias de objetos A; B possui dados de inicialização que serão passados a algum objeto de A. 10 a Questão (Ref.: 201408271650) Pontos: 1,0 / 1,0 Os padrões de projetos, quando aplicados ao desenvolvimento de aplicações, fornecem meios de descrever soluções comuns para problemas comuns, resultando em redução de tempo gasto com o desenvolvimento e melhoria da qualidade da aplicação. (FCC 2009) Analise: I. É o responsável pela especificação dos tipos de objetos a serem criados usando uma "instância" prototípica e pela criação de novos objetos copiando este protótipo. II. Define uma interface de nível mais alto que torna o subsistema mais fácil de usar e fornece uma interface única para um subsistema com diversas interfaces; compõe o grupo de padrões estruturais. III. Integrante do grupo de padrões comportamentais, ele provê uma forma de acessar sequencialmente os elementos de um agregado de objetos, sem expor a representação interna desse agregado. IV. As consequências do uso deste padrão é que o encapsulamento é mantido, já que objetos usam sua própria informação para cumprir responsabilidades; leva ao fraco acoplamento entre objetos e à alta coesão, uma vez que objetos fazem tudo que é relacionado à sua própria informação. As afirmações correspondem, respectivamente, aos padrões Adapter, Façade, Command e Iterator. Command, Iterator, Singleton e Expert. Controller, Expert, Singleton e Prototype. Command, Singleton, Controller e Façade. Prototype, Façade, Iterator e Expert. Período de não visualização da prova: desde 06/11/2014 até 25/11/2014. Slide 1 Slide 2 Slide 3
Compartilhar