Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: CCT0152_AV_201102071421 » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: 201102071421 - NILSON ESTEVÃO MARTINS Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 6,0 Nota de Partic.: 2 Data: 14/11/2014 07:13:20 1a Questão (Ref.: 201102194232) Pontos: 0,5 / 0,5 Mediator: Define um objeto que encapsula a forma como um conjunto de objetos interage. Mediator promove o acoplamento fraco ao evitar que os objetos se refiram explicitamente uns aos outros, permitindo que você varie suas interações independentemente. (Gamma et al., 2000). Sobre este padrão de projetos podemos afirma com certeza: Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de implementação Considerando objetos que implementem arrays, pode ser visto como uma classe intermediária de comunicação e gerenciamento, evitando que os objetos se comuniquem de forma direta 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. É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais objetos É 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. 2a Questão (Ref.: 201102156343) 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 justifica a primeira. as duas afirmações são verdadeiras, e a segunda não justifica a primeira. a primeira afirmação é verdadeira, e a segunda é falsa. a primeira afirmação é falsa, e a segunda é verdadeira. As duas afirmações são falsas 3a Questão (Ref.: 201102156342) Pontos: 0,5 / 0,5 Para fazer a modelagem de um padrão de projeto (design pattern) utilizando a UML é DESNECESSÁRIO. fazer a modelagem do mecanismo como uma colaboração, fornecendo seus aspectos estruturais, assim como os aspectos comportamentais. 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. 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. 4a Questão (Ref.: 201102185923) 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. PROTOTYPE. MEDIATOR. FACTORY METHOD. BUILDER. SINGLETON. 5a Questão (Ref.: 201102185909) Pontos: 0,0 / 0,5 Dentre as alternativas abaixo identifique a que NÃO define uma situação em que deve ser utilizado o padrão Factory Method? Quando o algoritmo de criação de um objeto deve ser independente das suas partes constituintes e da maneira como ele é "montado". Quando se quer localizar num ponto único a conhecimento de qual subclasse está sendo usada. Quando uma classe quer que suas subclasses especifiquem os objetos criados. Quando classes delegam responsabilidade para uma entre várias subclasses de apoio. Quando uma classe (o criador) não pode antecipar a classe dos objetos que deve criar. 6a Questão (Ref.: 201102281146) 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: Em uma interface grafica, temos um frame com barra de rolagem, menus, botões e a qualquer momento é possivel adicionar novos componentes a este frame. 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. 7a Questão (Ref.: 201102204179) Pontos: 1,5 / 1,5 O que fazer para evitar o acoplamento alto e o reuso baixo entre dois ou mais elementos na hora de atribuir responsabilidades entre eles, segundo o princípio GRASP Indireção? Resposta: O objetivo é atribuir responsabilidade a um objeto intermediario para servir como mediador entre outros componentes para que eles nao sejam diretamente acoplados. Gabarito: Deve-se atribuir responsabilidade a um objeto intermediário para mediar entre diversos componentes ou serviços, de maneira que eles não fiquem diretamente acoplados. 8a Questão (Ref.: 201102197575) Pontos: 0,0 / 1,0 (FGV - 2009) Os padrões de projeto orientados a objeto podem ter finalidade de criação, estrutural ou comportamental. Os padrões de criação se preocupam com o processo de criação de objetos. Os padrões estruturais lidam com a composição de classes ou de objetos. Os padrões comportamentais caracterizam as maneiras pelas quais classes ou objetos interagem e distribuem responsabilidades. Assinale a alternativa que apresenta apenas padrões de projeto comportamentais. Mediator, Interpreter e Command. Proxy, Builder e Mediator. Prototype, Abstract Factory e Builder. Composite, Decorato e Proxy. Singleton, Composite e Interpreter. 9a Questão (Ref.: 201102193869) Pontos: 0,0 / 0,5 Podemos afirmar que os Padrões de Criação da família GoF: 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. 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. São projetados para organizar, gerenciar e combinar diferentes comportamentos. 10a Questão (Ref.: 201102196920) Pontos: 1,0 / 1,0 (CESGRANRIO - 2008) 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. Abstract Factory. Adapter. Observer. Decorator.
Compartilhar