Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: PADRÕES DE PROJETO DE SOFTWARE COM JAVA AV Avaliação: 4,0 Nota Partic.: Av. Parcial.: 2,0 Nota SIA: 6,0 pts ENSINEME: TECNOLOGIAS JPA E JEE 1. Ref.: 3990967 Pontos: 0,00 / 1,00 Padrões arquiteturais definem os componentes estruturais de um sistema, e a forma de comunicação entre eles ou com outros sistemas, organizando as regras gerais para a concepção de aplicativos com algum perfil funcional específico. Plataformas de objetos distribuídos, como o CORBA, trabalham em um padrão arquitetural denominado: Broker PAC MVC Pipeline Event-Driven 2. Ref.: 3990965 Pontos: 1,00 / 1,00 Os EJBs do tipo Session Bean podem ser divididos em três perfis, sendo que um deles permite a ocorrência de apenas uma instância por máquina virtual, viabilizando o compartilhamento de dados de forma global, entre todos os aplicativos do servidor. Qual é o perfil do EJB descrito? Singleton Stateful Stateless Message Driven Bean Entity 02683 - PADRÕES GOF COMPORTAMENTAIS 3. Ref.: 6068699 Pontos: 0,00 / 1,00 Sobre o padrão Strategy, assinale a alternativa correta: Permite salvar o estado interno de um objeto, sem quebrar o seu encapsulamento, permitindo que esse estado seja restaurado posteriormente nesse mesmo objeto. Encapsula uma requisição em um objeto, desacoplando o objeto requisitante do objeto executor. É comumente implementada em frameworks de interface com o usuário. Define uma família de algoritmos encapsulados em objetos, permitindo que possamos trocar o algoritmo específico sem afetar o módulo usuário desse algoritmo. Permite separar os estados de um objeto ao longo do seu ciclo de vida em classes distintas, sendo definida uma classe para cada possível estado de um objeto, o que elimina a necessidade da classe detentora dos estados, fazendo a distinção do processamento a ser realizado, por meio de estruturas switch-case ou if-then-else complexas. Define em uma superclasse o esqueleto de um algoritmo comum a várias subclasses, sendo que alguns passos específicos desse algoritmo podem ser implementados nas subclasses. 4. Ref.: 6068804 Pontos: 0,00 / 1,00 javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990967.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990965.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206068699.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206068804.'); Na implementação desse padrão, cada objeto de uma estrutura hierárquica deve definir uma operação Accept, que recebe um objeto de uma classe X como parâmetro. A classe X, por sua vez, implementa uma interface genérica Z, definindo uma operação específica de tratamento para cada tipo de objeto que pertença à estrutura hierárquica. Assinale a opção com o nome do padrão cuja estrutura de solução foi descrita no enunciado. Template Method Visitor State Strategy Observer 02684 - PADRÕES GOF DE CRIAÇÃO 5. Ref.: 6041320 Pontos: 0,00 / 1,00 Analise a estratégia de solução a seguir: ''Definir uma hierarquia de classes responsáveis pela instanciação de uma hierarquia paralela de classes produtos, em que cada classe concreta é capaz de instanciar um produto específico de cada tipo definido em uma família de produtos''. Assinale a alternativa com o nome do padrão que define essa estratégia: Prototype Singleton Factory Method Abstract Factory Builder 6. Ref.: 6041029 Pontos: 1,00 / 1,00 Os iteradores de coleção em Java obtidos a partir da interface Collection são implementados com a aplicação de qual padrão de projeto? Factory Method Builder Abstract Factory Prototype Singleton 02685 - PADRÕES GOF ESTRUTURAIS 7. Ref.: 6041175 Pontos: 1,00 / 1,00 O RMI (Remote Method Invocation) é uma interface de programação que permite a execução de chamadas remotas no estilo RPC (Remote Procedure Call) em aplicações desenvolvidas em Java. Qual padrão de projeto você imagina encontrar na implementação do RMI? Flyweight Facade Proxy Composite Decorator 8. Ref.: 6041290 Pontos: 0,00 / 1,00 javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206041320.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206041029.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206041175.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206041290.'); Defina uma estrutura que permita a construção de um objeto externo sobre um objeto mais interno (recebido no seu construtor) de forma sucessiva, de modo que os objetos mais externos possam adicionar funcionalidades ao objeto mais interno sem a necessidade de utilizar subclasses. Todos os objetos da cadeia de composição compartilham uma interface comum. Assinale a alternativa com o nome do padrão que define essa estrutura de solução: Flyweight Adapter Bridge Composite Decorator 02686 - PADRÕES GRASP 9. Ref.: 6076573 Pontos: 1,00 / 1,00 Assinale a alternativa com a afirmação CORRETA sobre o padrão Controlador. O padrão Controlador proposto pelo GRASP equivale ao padrão GoF Strategy. O módulo Controlador centraliza a interação do usuário com o sistema, capturando os eventos externos e controlando o fluxo de navegação das telas e janelas do sistema. Em uma aplicação Java web, o módulo controlador pode ser implementado como um servlet. O módulo Controlador coordena e controla os módulos responsáveis pela produção da resposta a eventos lógicos de sistema gerados pela camada de interface com o usuário. O módulo Controlador centraliza o código relacionado à lógica de negócio do sistema ou de um caso de uso. 10. Ref.: 6076570 Pontos: 0,00 / 1,00 Veja o código a seguir e assinale a alternativa com o tipo de acoplamento existente entre a classe Exemplo e a classe Lâmpada. public class Lampada { public static final int LIGAR = 1; public static final int DESLIGAR = 0; public realizarOperacao(int codigo) { switch(codigo) { case LIGAR: // executa procedimento para ligar a lâmpada break; case DESLIGAR: // executa procedimento para ligar a lâmpada break; } } javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206076573.'); javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206076570.'); public class Exemplo { public static void main(String [] args) { Lampada lampada = new Lampada(); Lampada.realizarOperacao(Lampada.LIGAR); } } Acoplamento Funcional. Acoplamento de Estrutura. Acoplamento Global. Acoplamento de Controle. Acoplamento Externo.
Compartilhar