Prévia do material em texto
Teste de Conhecimento avalie sua aprendizagem Analise a estratégia de solução a seguir: ''Implementar uma operação clone em cada produto concreto a ser instanciado, permitindo que um módulo cliente crie uma nova instância por meio da criação de uma réplica de um objeto já existente''. Assinale a alternativa com o nome do padrão que define essa estratégia: Analise a estratégia de solução a seguir: ''Definir uma hierarquia de classes responsáveis pela instanciação de um objeto complexo, geralmente construído a partir de um conjunto de passos, sendo cada passo definido como uma operação das classes dessa hierarquia, separando o processo de criação da representação interna dos produtos''. Assinale a alternativa com o nome do padrão que define essa estratégia: PADRÕES DE PROJETO DE SOFTWARE COM JAVA Lupa Calc. EEX0129_202003126209_TEMAS Aluno: LOHAN SOUZA DE OLIVEIRA Matr.: 202003126209 Disc.: PADRÕES DE PROJ 2022.3 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha. Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 02684PADRÕES GOF DE CRIAÇÃO 1. Abstract Factory Builder Prototype Factory Method Singleton Data Resp.: 07/09/2022 14:52:03 Explicação: A resposta certa é: Prototype 2. Builder Abstract Factory Singleton Prototype javascript:voltar(); javascript:voltar(); javascript:diminui(); javascript:aumenta(); javascript:calculadora_on(); Permitir que uma abstração que tenha diferentes representações possa variar de forma independente das suas representações, como, por exemplo, no caso de uma abstração implementada em diferentes plataformas (Windows, Linux, etc.). Assinale a alternativa com o nome do padrão que possui esse propósito: Você está desenvolvendo um sistema e percebe que está instanciando uma grande quantidade de objetos cujos atributos não mudam de valor durante toda a execução do programa. Muitos desses objetos instanciados são réplicas, o que gera uma utilização muito ineficiente da memória. Assinale a alternativa com o nome do padrão que poderia ser aplicado nesse cenário: Assinale a alternativa que expressa a intenção do padrão de projeto Template Method: Factory Method Data Resp.: 07/09/2022 14:56:25 Explicação: A resposta certa é: Builder 02685PADRÕES GOF ESTRUTURAIS 3. Flyweight Composite Facade Abstract Factory Bridge Data Resp.: 07/09/2022 14:53:37 Explicação: A resposta certa é: Bridge 4. Bridge Decorator Singleton Flyweight Composite Data Resp.: 07/09/2022 14:57:01 Explicação: A resposta certa é: Flyweight 02683PADRÕES GOF COMPORTAMENTAIS 5. Encapsular uma requisição em um objeto, permitindo o registro do histórico de requisições disparadas pelos módulos cliente e a criação de filas de requisições. Implementar a estrutura de um algoritmo genérico em uma superclasse, considerando que os passos comuns são implementados na própria superclasse, enquanto os passos específicos são implementados nas suas subclasses. Definir uma relação de dependência entre objetos, de modo a garantir que modificações no estado do objeto detentor da informação sejam notificadas automaticamente para os objetos inscritos previamente como interessados em receber essas notificações. Encapsular uma família de algoritmos em objetos, permitindo que os módulos clientes possam utilizar esses algoritmos de forma intercambiável. Você está implementando um sistema e quer guardar o histórico de todas as requisições efetuadas pelo usuário via interface gráfica, de forma a poder realizar operações, como desfazer (undo) e refazer (redo) requisições. Assinale a alternativa com o nome do padrão mais indicado para ser aplicado nesse contexto: Um módulo A contém operações como conversão de medidas, formatação de valores monetários, remoção de espaços duplicados em strings e envio/recepção de arquivos FTP. O módulo A possui coesão: Assinale a alternativa que contém tipos de coesão de um módulo em ordem do tipo de coesão mais baixa para a mais alta: Permite capturar o estado interno de um objeto, permitindo que o seu estado seja restaurado posteriormente, sem quebrar o encapsulamento desse objeto. Data Resp.: 07/09/2022 14:59:58 Explicação: Gabarito: Implementar a estrutura de um algoritmo genérico em uma superclasse, considerando que os passos comuns são implementados na própria superclasse, enquanto os passos específicos são implementados nas suas subclasses. 6. Command State Mediator Strategy Chain of Responsibility Data Resp.: 07/09/2022 14:58:24 Explicação: Gabarito: Command 02686PADRÕES GRASP 7. Funcional. Coincidente. Temporal. Procedural. Sequencial. Data Resp.: 07/09/2022 14:58:52 Explicação: A coesão coincidente se caracteriza em um módulo quando os elementos estão agrupados de forma arbitrária ou por conveniência. 8. Procedural - Sequencial - Comunicação Lógica - Coincidente - Sequencial Coincidente - Temporal - Sequencial Procedural - Lógica - Funcional Temporal - Lógica - Procedural Data Resp.: 07/09/2022 14:59:02 Explicação: Ao trabalhar com um aplicativo corporativo, segundo a arquitetura MVC, ocorre uma divisão natural das camadas, em termos dos projetos internos, ficando a camada View sob responsabilidade do projeto com terminador "war". A interface padrão, conforme o próprio terminador indica, é um aplicativo Java Web, sendo comum a implementação de um padrão de desenvolvimento para centralizar o tratamento das requisições, bem como redirecionar para a visualização correta, após efetuar as chamadas para a camada Controller. De qual padrão estamos falando, e qual o componente deve implementá-lo? Uma mudança essencial no modelo de programação Java, com a evolução do JEE, foi o uso de anotações nas diversas tarefas de configuração dos EJBs do aplicativo. Para que serve a anotação Local no ambiente de criação de EJBs? A coesão de um módulo é classificada de acordo com o critério utilizado para reunir o conjunto dos elementos que o compõem. Em ordem de um nível baixo para o mais alto temos: coesão Coincidente onde os elementos estão agrupados em um módulo de forma arbitrária. Seguido da Temporal quando todas as operações são executadas na inicialização do sistema. E a Sequencial, onde resultados de um passo são utilizados como entrada para o passo seguinte. TECNOLOGIAS JPA E JEE 9. Padrão de desenvolvimento Flyweight e componente do tipo EJB Padrão de desenvolvimento Service Locator e componente do tipo JNDI Padrão de desenvolvimento Front Controller e componente do tipo Servlet Padrão de desenvolvimento Facade e componente do tipo EJB Padrão de desenvolvimento DAO e componente do tipo JPA Data Resp.: 07/09/2022 14:53:05 Explicação: A resposta correta é: Padrão de desenvolvimento Front Controller e componente do tipo Servlet 10. Definir um contexto de persistência local para o Session Bean. Definir um Stateful Session Bean. Definir a interface de acesso às entidades do JPA. Definir um Stateless Session Bean. Definir a interface de acesso local ao pool de EJBs. Data Resp.: 07/09/2022 14:59:47 Explicação: A resposta correta é: Definir a interface de acesso local ao pool de EJBs. Não Respondida Não Gravada Gravada Exercício inciado em 07/09/2022 14:51:28.