Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fechar Avaliação: CCT0152_AV_201501016466 » PADRÕES DE PROJETO DE SOFTWARE Tipo de Avaliação: AV Aluno: 201501016466 RODRIGO DA SILVA QUINHONES Professor: HORACIO DA CUNHA E SOUZA RIBEIRO Turma: 9001/AA Nota da Prova: 5,5 Nota de Partic.: 1,5 Data: 19/06/2015 17:11:58 1a Questão (Ref.: 201501143728) Pontos: 0,0 / 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: Utilizar variações de proteção. Gabarito: Devese atribuir responsabilidade a um objeto intermediário para mediar entre diversos componentes ou serviços, de maneira que eles não fiquem diretamente acoplados. 2a Questão (Ref.: 201501125893) Pontos: 0,0 / 0,5 considerando a classe de projetos GoF assinalem a opção cujos padrões de projeto estão todos classificados como Comportamentais Command, bridge, Iterator, Mediator, Observer, State, Strategy Command, bridge, Iterator, Mediator, bridge, State, Strategy Command, Interpreter, Iterator, Mediator, composite , State, Strategy Command, bridge, Iterator, Mediator, composite State, Strategy Command, Interpreter, Iterator, Mediator, Observer, State, Strategy 3a Questão (Ref.: 201501137160) Pontos: 0,5 / 0,5 (FGV 2008) Considere as seguintes assertivas sobre as vantagens do uso de padrões de software (software patterns): I. Padrões de projeto proporcionam um vocabulário comum de projeto, facilitando comunicação, documentação e aprendizado dos sistemas de software. II. Padrões de projeto auxiliam no desenvolvimento de software por meio da reutilização do projeto de soluções computacionais já testadas e aprovadas. III. Uma biblioteca de padrões pode ajudar a melhorar e padronizar o desenvolvimento de software. As assertivas corretas são: somente I e III. I, II e III. somente I e II. somente II. somente II e III. 4a Questão (Ref.: 201501136441) Pontos: 1,0 / 1,0 Os padrões de projetos, quando aplicados ao desenvolvimento de aplicações, fornecem meios de descrever soluções comuns para problemas comuns, resultando em redução de tempo gasto com o desenvolvimento e melhoria da qualidade da aplicação. (FCC 2009) Analise: I. É o responsável pela especificação dos tipos de objetos a serem criados usando uma "instância" prototípica e pela criação de novos objetos copiando este protótipo. II. Define uma interface de nível mais alto que torna o subsistema mais fácil de usar e fornece uma interface única para um subsistema com diversas interfaces; compõe o grupo de padrões estruturais. III. Integrante do grupo de padrões comportamentais, ele provê uma forma de acessar sequencialmente os elementos de um agregado de objetos, sem expor a representação interna desse agregado. IV. As consequências do uso deste padrão é que o encapsulamento é mantido, já que objetos usam sua própria informação para cumprir responsabilidades; leva ao fraco acoplamento entre objetos e à alta coesão, uma vez que objetos fazem tudo que é relacionado à sua própria informação. As afirmações correspondem, respectivamente, aos padrões Command, Singleton, Controller e Façade. Controller, Expert, Singleton e Prototype. Command, Iterator, Singleton e Expert. Adapter, Façade, Command e Iterator. Prototype, Façade, Iterator e Expert. 5a Questão (Ref.: 201501125905) 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 estão todas corretas As afirmativas II, III estão corretas e a afirmativa I está errada. As afirmativas I, II, III estão incorretas As afirmativas I, II, estão corretas e a afirmativa III está errada. 6a Questão (Ref.: 201501137147) Pontos: 0,0 / 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? Prototype. Factory Method. Builder. Abstract Factory. Command. 7a Questão (Ref.: 201501133784) Pontos: 0,5 / 0,5 A definição ¿ 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).¿ Refrese a que padrão de projeto: Iterator Builder. Memento Mediator Command 8a Questão (Ref.: 201501133445) Pontos: 0,5 / 0,5 Relacione os padrões de projetos listados abaixo com suas respectivas finalidades: PADRÕES DE PROJETO 1. Facade (fachada) 2. Decorator (decorador) 3. Memento (lembrança) 4. Proxy (procurador) 5. Observer (observador) FINALIDADES ( ) Define uma dependência um para muitos entre objetos tal que, quando o estado de um objeto muda, todos os seus dependentes são notificados e atualizados automaticamente. ( ) Fornece uma interface unificada para um conjunto de objetos que constituem um subsistema. Define uma interface de mais alto nível que torna o subsistema mais fácil de usar. ( ) Sem violar o encapsulamento, captura e exterioriza o estado interno de um objeto, tal que o objeto possa ser restaurado a este estado mais tarde. ( ) Acrescenta responsabilidades adicionais a um objeto dinamicamente. Fornece uma alternativa flexível para a extensão de funcionalidade. ( ) Controla o acesso a um objeto através de outro objeto, que atua como seu substituto, ou como um envoltório. Assinale a alternativa que indica a sequência correta, de cima para baixo. 5 1 3 4 2 5 1 3 2 4 1 5 3 4 2 3 1 5 2 4 3 5 1 4 2 9a Questão (Ref.: 201501137124) Pontos: 1,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. Prototype,Abstract Factory e Builder. Mediator, Interpreter e Command. Proxy, Builder e Mediator. Singleton, Composite e Interpreter. Composite, Decorato e Proxy. 10a Questão (Ref.: 201501220691) 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: O padrão mencionado é o padrão singleton, a vantagem atribuida ao mesmo é o desempenho. Gabarito: padrão singleton uma vantagem apontada é o desempenho de uma aplicação. Período de não visualização da prova: desde 12/06/2015 até 25/06/2015.
Compartilhar