Buscar

AV2 PADRÕES DE PROJETO

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

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

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ê viu 3, do total de 4 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

Prévia do material em texto

BDQ Prova http://www.bquestoes.estacio.br/prova_resultado_preview.asp?cod_his... 
1 de 4 05/09/2012 09:45 
 Detalhes 
Avaliação: CCT0152_AV2_201001483171 
Tipo de Avaliação: AV2 
Aluno: 
Professor: CLAUDIA ABREU PAES Turma: 9001/AA 
Nota da Prova: 6,5 de 8,0 Nota do Trabalho: Nota de Participação: 1,5 Data: 01/09/2012 
 
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: 
 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, mas não deve ser usado quando associado a percorrer arrays ou tabelas. 
 Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de 
implementação. 
 É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais objetos 
 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. 
 
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 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 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 objeto possui condicionais grandes. 
 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 
 
Coesão alta, controlador e polimorfismo 
Coesão alta, polimorfismo, visitor 
1.) ITERATOR 6 
a 
 sem. Pontos: 1 , 0 / 1 , 0 
 
2.) VISITOR 7 
a 
 sem. Pontos: 1 , 0 / 1 , 0 
 
3.) GRASP 8 
a 
 sem. Pontos: 0 , 5 / 0 , 5 
Marque a alternativa que apresenta apenas padrões G RASP? 
Observer, visitor, strategy 
Controlador, polimorfismo e Memento 
Coesão alta, controlador, strategy 
 
BDQ Prova http://www.bquestoes.estacio.br/prova_resultado_preview.asp?cod_his... 
2 de 4 05/09/2012 09:45 
 
polimorfismo. 
 
Marque a alternativa que representa o padrão GRASP que está relacionada com a seguinte questão: A quem 
atribuir responsabilidades para evitar acoplamento direto entre objetos? 
 Indireção 
 Variações Protegidas 
Invenção Pura 
Controlador 
Polimorfismo 
 
Assinale a afirmativa correta sobre o padrão Builder: 
 Deve-se é embutir no construtor da própria classe a lógica para criação de um objeto ou ainda distribuir 
a lógica de criação em vários métodos adicionais. 
 é uma abordagem que não facilita a criação de objetos com diferentes configurações e representações, 
tornando o código dependente a complexidade das classes relacionadas 
4.) POLIMORFISMO 9 
a 
 sem. Pontos: , 0 0 / 5 , 0 
sobre o Polimorfismo considere a figura abaixo e se lecione a reposta totalmente correta: 
 Define-se vários métodos. Cada método deve ter uma estrutura IF...THEN...para cada situação. Isto é 
polimorfismo. 
Define-se uma estrutura de herança. Automaticamente fica definido uma estrutura de métodos. Isto é 
polimorfismo 
Define-se um método físico na classe PAI. Os métodos nas classes filho são definidos. Neste caso cada 
método é sobreposto. No caso de uma nova classe filho há necessidade obrigatória devido a estrutura PAI 
de se definir o método na nova classe. Isto é polimorfismo. 
 Define-se um método abstrato, em uma classe abstrata. Cada classe que herda a classe abstrata 
implementa o método físico. Dependendo da classe instanciada é executado o método correpondente. Isto 
é polimorfismo. 
Define-se um método na classe PAI. Este método é copiado nas classes que herdam a classe PAI. Isto é 
5.) GRASP 10 
a 
 sem. Pontos: 0 , 0 / 0 , 5 
6.) AFIRMATIVA 2 
a 
 sem. Pontos: 0 , 5 / 0 , 5 
BDQ Prova http://www.bquestoes.estacio.br/prova_resultado_preview.asp?cod_his... 
3 de 4 05/09/2012 09:45 
 Um dos principais objetivos do padrão Builder é separar o algoritmo de criação de um objeto complexo 
tanto da especificação, quanto das partes que o compõem. 
 Deve-se é separar no construtor da própria classe a lógica para criação de um objeto e concentrar a 
lógica de criação em uma hierarquia de herança. 
 A legibilidade da solução final, ou seja, para entender como um objeto é criado e sob quais condições, 
fica comprometida 
 
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. 
 
 Mediator. 
Factory Method. 
Builder. 
Singleton. 
Facade. 
 
O padrão de projeto Intepreter descreve como projetar um conjunto de classes para representar e interpretar 
uma gramática para linguagens simples.: I - Sua aplicação é recomenda naquelas situações em que há 
necessidade de interpretar uma linguagem qualquer e, ao mesmo tempo, quando se quer representar 
sentenças da linguagem, como árvores abstratas sintáticas. Ii - É importante destacar que o termo 
¿linguagem¿, na definição desse padrão, é bastante ampla, não estando restrita apenas a linguagens de 
programação Iii - . A estrutura do padrão Interpreter sugere uma modelagem realizada através de uma 
gramática mapeada em uma arvore hierárquica em que cada cada regra gramatical é um nível na arvore, e 
pode ser usada para interpretar as sentenças varrendo toda a árvore e finalização do problema. 
 As afirmativas I, III, estão corretas e II errada 
 As afirmativas II, III estão corretas e a afirmativa I está errada. 
 As afirmativas I, II, III estão incorretas 
 As afirmativas estão todas corretas 
 As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 
Seguindo os princípios Especialista da Informação qual o critério deve ser adotado na escolha de uma classe 
para receber uma nova responsabilidade? 
Resposta: deixa a reposabilidade ao especilista da informação - a classe para atribuir a resposabilidade 
 
7.) PADRÃO GOF 4 
a 
 sem. Pontos: 0 , 5 / 0 , 5 
8.) INTERPRETER 5 
a 
 sem. Pontos: 0 , 0 / 0 , 5 
9.) ESPECIALISTA DA INFORMAÇÃO 11 
a 
 sem. Pontos: 1 , 5 / 1 , 5 
 
BDQ Prova http://www.bquestoes.estacio.br/prova_resultado_preview.asp?cod_his... 
4 de 4 05/09/2012 09:45 
 
Os métodos polimórficos utilizam os conceitos deoverloading e overrinding. Apresente a diferença entre os dois 
conceitos. 
Resposta: overloading - sobrecarga - utiliza varios metodos com o mesmo nome e com parementos diferentes 
overrinding - sobreescrita - utiliza o mesmo metodo com o mesmo nome e com os mesmos paramentos 
anulando o anterior - aqui que se faz mesmo o polimórfismo. 
 
 
10.) POLIMORFISMO 13 
a 
 sem. Pontos: 1 , 5 / 1 , 5

Outros materiais