Buscar

PADROES DE PROJETO DE SOFTWARE AV 1 ANO 2014_2

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

Avaliação: CCT0152_AV_201002006538 » PADRÕES DE PROJETO DE SOFTWARE
Tipo de Avaliação: AV
Aluno: 201002006538 ­ ANDRE DA SILVA BITENCOURT
Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA
Nota da Prova: 4,0        Nota de Partic.: 2        Data: 19/11/2014 08:09:30
  1a Questão (Ref.: 201002108895) Pontos: 0,5  / 0,5
Analise as sentenças sobre padrões de projeto de software e, em seguida, assinale a alternativa correta: 
I. Permitem descrever fragmentos de projeto e reusar ideias de projeto; 
II. Dão nome e forma a procedimentos abstratos, regras e melhores práticas relativas às técnicas orientadas a
objetos; 
III. Ajudam a escolher alternativas de projeto que tornam um sistema reutilizável.
  Todas as sentenças estão corretas
Apenas as sentenças I e II estão corretas
Apenas as sentenças I e III estão corretas
Apenas as sentenças II e III estão corretas
Apenas a sentença II está correta
  2a Questão (Ref.: 201002084970) 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.
  identificar as soluções específicas e particulares para o problema básico e reificá­la como um
mecanismo.
entender o padrão de projeto como uma colaboração representada com suas partes estruturais e
comportamentais.
identificar as soluções comuns para o problema básico.
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.
  3a Questão (Ref.: 201002114984) Pontos: 0,5  / 0,5
O padrão Adpater é bastante utilizado para compatibilizar classes implementas por programadores diferentes,
ou desenvolvidas em momentos diferentes, ou ainda para unir classes com interfaces diferentes em uma
estrututura hierarquica única, sem precisar implementar novamente todas as funcionalidades e interfaces da
classe já existente, considere as afirmativas: I ­ A idéia é criar uma nova classe (Adapter) com a interface
padrão que se deseja para fazer a conexão com a classe já existente (Adaptee) com interface diferente da
estrutura de classes que se pretende utilizar no sistema. Ii ­ Além de reaproveitar totalmente a classe antiga
sem precisar alterar o código e entender a complexa implementação realizada, mantém a uniformidade do seu
projeto original. Iii cria uma hierarquia de classes diferentes categorias de objetos sem relação de herança.
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 estão todas corretas
As afirmativas I, II, III estão incorretas
  As afirmativas I, II, estão corretas e a afirmativa III está errada.
  4a Questão (Ref.: 201002114977) Pontos: 0,5  / 0,5
Consideram as afirmativa abaixo sobre o padrão protype I ­ Declara um método chamado clone na superclasse
abstrata do modelo (Prototype). Em função desta declaração, cada classe concreta derivada deve ser capaz de
gerar uma nova instância de si próprio. II ­ , Entre as aplicações para este padrão de projeto está a facilidade
de instanciar classes em tempo de execução. III Quando as instancias de uma classe apresentam poucas
combinações de estados, pode ser mais conveniente definir previamente um conjunto de protótipos e cloná­los,
sempre que foi necessário.
As afirmativas I, II, estão corretas e a afirmativa III está errada.
  As afirmativas estão todas corretas
As afirmativas I, III, estão corretas e II errada
As afirmativas I, II, III estão incorretas
As afirmativas II, III estão corretas e a afirmativa I está errada.
  5a Questão (Ref.: 201002126226) Pontos: 0,5  / 0,5
(CESGRANRIO ­ 2010) Em um sistema de software para controlar pedidos para entrega em domicílio, deve
haver uma funcionalidade que permita que o atendente solicite a repetição de um pedido anteriormente feito
por um cliente. O gerente do restaurante informou que essa funcionalidade aumentaria a agilidade no
atendimento aos clientes, visto que muitos deles tendem a fazer pedidos similares aos que já fizeram
anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja composição
corresponde a produtos normalmente requisitados pelos clientes e solicita ao sistema a construção de um novo
pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado pelo atendente se o cliente solicitar a
adição de novos produtos do cardápio, por exemplo. Portanto, a parte principal dessa funcionalidade
corresponde a criar uma cópia de um pedido a partir de pedido preexistente. 
Na implementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão de projeto do catálogo
GoF (Gang of Four), dentre os listados abaixo?
Factory Method.
Command.
Abstract Factory.
  Prototype.
Builder.
  6a Questão (Ref.: 201002122859) 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:
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
É 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.
  7a Questão (Ref.: 201002209774) Pontos: 1,0  / 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: A utilização de elementos de navegação e caixas de texto, fazendo uso de classes já criadas,
adaptando­as as necessidades específicas do projeto.
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.
  8a Questão (Ref.: 201002123933) Pontos: 0,0  / 1,0
Considere a definição: State: Permitir a um objeto alterar o seu comportamento quando o seu estado interno
mudar. O objeto parecerá ter mudado de classe (Gamma et al., 2000). Qual das alternativas é completamente
verdadeira?
  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
  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;
  9a Questão (Ref.: 201002132679) Pontos: 0,0  / 1,5
Uma classe com alto acoplamento faz com que o reuso fique comprometido. Apresente uma justificativa para
esse problema.
Resposta: Devido a grande relação da classe aos elementos do sistema é possível que outra aplicação não faça
uso dos elementos acoplados a esta classe tornando inviável o reaproveitamento da mesma.
Gabarito: O problema ocorre pois para reaproveitar métodos acoplados torna­se necessária a presença
adicional das classes relacionadas, dificultando o processo de reutilização.
  10a Questão (Ref.: 201002126208) Pontos: 0,0  / 1,0
(COPEVE­UFAL ­ 2011) O diagrama de classes apresentado na figura não representa fielmente um buffer que
passa por estados sucessivos de transformação. Em outras palavras, um buffer, que está inicialmente vazio,
depois pode ficar parcialmente cheio e, possivelmente, pode ficar cheio. 
Dentre as opções apresentadas a seguir, qual o padrão de projetos que melhor se adequaria para modelar essa
característica dinâmica do buffer?
Mediator.
Singleton.
Composite.
  Dynamic behavior.
  State.
Período de não visualização da prova: desde 06/11/2014 até 25/11/2014.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Materiais recentes

Perguntas Recentes