Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: CCT0265_AV_201409016651 » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: 201409016651 - MONICA CELINA DOS SANTOS ARAUJO Professor: JOSE CARLOS MILLAN Turma: 9002/AB Nota da Prova: 6,0 Nota de Partic.: 0 Av. Parcial 1,5 Data: 21/11/2015 11:08:45 1a Questão (Ref.: 201409220895) Pontos:1,0 / 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: Padrão Singleton - Provê um ponto único de acesso global Uma vantagem 1) mantém uma estrutura simples 2) objeto só é alocado na memória quando é instanciado pela primeira vez Gabarito: padrão singleton uma vantagem apontada é o desempenho de uma aplicação. 2a Questão (Ref.: 201409697854) Pontos:1,0 / 1,5 Segundo a teoria apresentada no curso, qual a principal vantagem do uso do padrão Controlador para segmentar lógicamente o código, segundo a visão lógica de usuários segundo eventos? Resposta: Conseguir um resultado mais próximo da funcionalidade requerida na visão do usuário, onde os eventos seguem uma sequência lógica intuitiva. Gabarito: Permite criar um ponto de entrada comum na chamada do evento e entre os benefícios da utilização do padrão controlador, pode-se citar: maior potencial para reuso, construção de interfaces ¿plugáveis¿, maior controle sobre o estado de um caso de uso, e maior organização do código. 3a Questão (Ref.: 201409126091) Pontos:0,5 / 0,5 Uma das categoria que tradicionalmente se classificam os padrões de projeto :Padrões Estruturais cujo objetivo é: Define formas de gerencia e combinar diferentes comportamentos. Define a forma de organização dos objetos e sua colaboração mutua Defende formas de instanciar objetos delegando responsabilidades Define como implantar um novo método em uma classe. Define como implantar o mecanismo de herança em um grupo de objetos 4a Questão (Ref.: 201409126102) 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 estão todas corretas Página 1 de 3 29/11/2015 As afirmativas I, II, III estão incorretas 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, estão corretas e a afirmativa III está errada. 5a Questão (Ref.: 201409725747) Pontos:0,5 / 0,5 Programadores se deparam muitas vezes com a situação onde é preciso acrescentar responsabilidades a objetos e não a classe. Uma das opções é utilizar herança, entretanto, esta alternativa é estática. Outra alternativa é especificar uma nova classe para implementar cada responsabilidade que se deseja atribuir dinamicamente a um dado objeto. Esta nova classe se chama _____________________________. Beidge; Associativa; Composite; Adapter; Decorator; 6a Questão (Ref.: 201409725828) Pontos:0,5 / 0,5 O objetivo do padrão de projeto estrutural de oFlyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela; Gamma et al (2000) recomendam sua utilização somente quando todas as condições forem verdadeiras. Assinale dentre as opções abaixo a unica condição que não é verdadeira Uma aplicação utiliza um pequeno número de objetos. A aplicação não depende da identidade do objeto. Muitos grupos de objetos podem ser substituídos por relativamente poucos objetos compartilhados, uma vez que estados extrínsecos são removidos. Uma aplicação utiliza um grande número de objetos. Os custos de armazenamento são altos por causa da grande quantidade de objetos. 7a Questão (Ref.: 201409710749) Pontos:0,5 / 0,5 O método Arrays.sort (java.util) recebe como parâmetro um objeto do tipo Comparator que implementa um método compare(a, b) e utiliza-o para definir as regras de ordenação, assim evitamos duplicidade de código permitindo sobrescrita apenas do critério de comparação do algoritmo de ordenação, no qual os outros passos permanecem invariantes. Essa situação exemplifica qual dos padrões GOF abaixo: Flyweight Builder State Template Method Command 8a Questão (Ref.: 201409754046) Pontos:0,5 / 0,5 O padrão de projeto Comand apresenta uma serie aplicabilidades. Assinale dentre as opções abaixo a unica que não esta correta. permitir fácil inclusão de novos comandos,permitir isições concorrentes, manter histórico de execução de comandos, suportar operações para desfazer comandos e, principalmente, evitar o acoplamento direto entre classes e serviços. permitir tratamento de requ Manter histórico de execução de comandos; Permitir em casos excepcionais o acoplamento direto entre classes e serviços; Evitar o acoplamento direto entre classes e serviços; permitir tratamento de requisições concorrentes; permitir fácil inclusão de novos comandos Página 2 de 3 29/11/2015 9a Questão (Ref.: 201409754297) Pontos:0,0 / 1,0 O padrão de projeto que 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, chama-se: Visitor ; State; Proxy; Interpreter; Strategy; 10a Questão (Ref.: 201409135131) Pontos:1,0 / 1,0 sobre o Polimorfismo considere a figura abaixo e selecione a reposta totalmente correta: 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 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 na classe PAI. Este método é copiado nas classes que herdam a classe PAI. 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. Período de não visualização da prova: desde 12/11/2015 até 24/11/2015. Página 3 de 3 29/11/2015
Compartilhar