Buscar

Padrões de Projeto de Software 2014.12

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
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

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Avaliação: CCT0265_AVS_201301014354 » PADRÕES DE PROJETO DE SOFTWARE 
Tipo de Avaliação: AVS 
Aluno: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 
Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: XXXXXX 
Nota da Prova: Nota de Partic.: Data: 00/12/2014 11:16:55 
 
 
 1a Questão (Ref.: 201301218368) Pontos: 1,5 / 1,5 
Considerando que o padrão tem o objetivo de garantir que existe apenas uma instancia de uma certa classe a 
qualquer instante e em qualquer ponto de um sistema. Indique o padrão mencionado e cite uma vantagem de 
sua utilização. 
 
 
 
Resposta: Essa á a descrição do padrão Singleton, cuja a principal vantagem é o de termos apenas uma única 
instancia da classe durante toda a execução do programa, sendo possível o acesso global de forma bastante 
simplificada. 
 
 
Gabarito: padrão singleton uma vantagem apontada é o desempenho de uma aplicação. 
 
 
 
 2a Questão (Ref.: 201301123580) Pontos: 0,0 / 0,5 
Programadores se deparam muitas vezes com a situação onde é preciso acrescentar responsabilidades a objetos 
e não a classe. Uma alternativa é atribuir dinamicamente a um dado objeto. Este padrão é chamado de: 
 
 
 Decorator. 
 
Bridge 
 
Singleton 
 protype 
 
Instance 
 
 
 
 3a Questão (Ref.: 201301131095) Pontos: 0,0 / 0,5 
Podemos afirmar que os Padrões de Criação da família GoF: 
 
 
 
Colocam em dúvida o tratamento dispensado aos usuários na fase de levantamento das necessidades. 
 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. 
 
Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e 
colaboração mútua. 
 São projetados para organizar, gerenciar e combinar diferentes comportamentos. 
 
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. 
 
 
 
 4a Questão (Ref.: 201301123571) Pontos: 0,0 / 0,5 
Considere as afirmativa abaixo sobre o padrão Builder: I ) É utilizado na instanciação de objetos complexos. II)É 
visto como um construtor especializado, que irá executar e avaliar diferentes regras de negócio e demais 
particularidades relacionadas com a criação de um novo objeto. III )A idéia é atribuir a responsabilidade de 
criação do objeto complexo a outra classe, esta classe irá armazenar todas as configurações e regras 
necessárias para a instanciação do novo objeto. 
 
 
 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 As afirmativas estão todas corretas 
 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
 As afirmativas I, III, estão corretas e II errada 
 
As afirmativas I, II, III estão incorretas 
 
 
 
 5a Questão (Ref.: 201301132539) Pontos: 0,0 / 1,0 
Marque a alternativa que está relacionada ao padrão de projeto que é responsável por selecionar quais 
responsabilidades devem estar em quais classes. 
 
 
 
Observador 
 Acoplamento fraco 
 Especialista da informação 
 
State 
 
Criador 
 
 
 
 6a Questão (Ref.: 201301134832) 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? 
 
 
 
Visitor. 
 
Iterator. 
 Singleton. 
 
Bridge. 
 Memento. 
 
 
 
 7a Questão (Ref.: 201301123118) 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 partir dessa classe. 
 
Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima. 
 
 
 
SINGLETON. 
 
MEDIATOR. 
 BUILDER. 
 FACTORY METHOD. 
 
FACADE. 
 
 
 
 8a Questão (Ref.: 201301131459) Pontos: 0,0 / 0,5 
Memento:Captar e externalizar um estado interno de um objeto, de maneira que esse estado seja restaurado ao 
objeto em outro momento, sem violar seu encapsulamento (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. 
 
É bastante utilizado em programação de sistemas para gerenciar a comunicação entre dois ou mais 
objetos 
 
Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de 
implementação 
 tem como objetivo criar um meio de armazenar informações sobre um objeto, permitindo acessar essas 
informações tanto para salvar o estado de um objeto específico, como para recuperar, sempre que for 
necessário. 
 
 
 
 9a Questão (Ref.: 201301141405) 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: Devemos atribuir a responsabilidade a um objeto intermediário que irá meidar entre os diversos 
componentes ou serviços, para que eles não fiquem 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. 
 
 
 
 10a Questão (Ref.: 201301132604) Pontos: 1,0 / 1,0 
sobre o Polimorfismo considere a figura abaixo e selecione a reposta totalmente correta: 
 
 
 
 
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 na classe PAI. Este método é copiado nas classes que herdam a classe PAI. Isto é 
polimorfismo. 
 
Define-se vários métodos. Cada método deve ter uma estrutura IF...THEN...para cada situação. 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 uma estrutura de herança. Automaticamente fica definido uma estrutura de métodos. Isto é 
polimorfismo

Outros materiais