Baixe o app para aproveitar ainda mais
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_202101172442_TEMAS Aluno: Disc.: PADRÕES DE PROJ Matr.: 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. Factory Method Abstract Factory Builder Prototype Singleton Data Resp.: 01/09/2022 17:12:09 Explicação: A resposta certa é: Prototype 2. Factory Method Prototype Singleton Builder javascript:voltar(); javascript:voltar(); javascript:diminui(); javascript:aumenta(); javascript:calculadora_on(); 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: 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: Assinale a alternativa que expressa a intenção do padrão de projeto Template Method: Abstract Factory Data Resp.: 01/09/2022 17:12:13 Explicação: A resposta certa é: Builder 02685PADRÕES GOF ESTRUTURAIS 3. Composite Bridge Decorator Flyweight Singleton Data Resp.: 01/09/2022 17:12:15 Explicação: A resposta certa é: Flyweight 4. Composite Facade Bridge Flyweight Abstract Factory Data Resp.: 01/09/2022 17:12:18 Explicação: A resposta certa é: Bridge 02683PADRÕES GOF COMPORTAMENTAIS 5. Encapsular uma família de algoritmos em objetos, permitindo que os módulos clientes possam utilizar esses algoritmos de forma intercambiável. Permite capturar o estado interno de um objeto, permitindo que o seu estado seja restaurado posteriormente, sem quebrar o encapsulamento desse objeto. 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. 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. Definir uma relação de dependência entre objetos, de modo a garantir que modificações no estado do objeto 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: Uma classe X acessa diretamente os atributos públicos de uma classe Y. Que tipo de acoplamento existe entre X e Y? Assinale a alternativa CORRETA sobre o padrão GRASP Acoplamento: detentor da informação sejam notificadas automaticamente para os objetos inscritos previamente como interessados em receber essas notificações. Data Resp.: 01/09/2022 17:12:20 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. Chain of Responsibility Command Strategy State Mediator Data Resp.: 01/09/2022 17:12:22 Explicação: Gabarito: Command 02686PADRÕES GRASP 7. Acoplamento Global Acoplamento de Estrutura Acoplamento de Conteúdo Acoplamento de Dados Acoplamento Externo Data Resp.: 01/09/2022 17:12:25 Explicação: No acoplamento de conteúdo um módulo utiliza aspectos de implementação de outro módulo. 8. Em um sistema de acoplamento baixo, as mudanças de requisitos tendem a gerar modificações em poucas classes. Quando passamos um objeto com diversos atributos como argumento para um método e este método utiliza apenas um desses atributos no seu processamento, temos um acoplamento de dados. Um sistema com acoplamento baixo indica que a lógica do sistema está concentrada em poucos módulos, facilitando o seu entendimento. Um sistema que não faz uso do recurso de interfaces abstratas, sendo implementado apenas com classes, tende a ser um sistema com grau de acoplamento baixo. O acoplamento Global entre dois módulos corresponde a um grau baixo de acoplamento, já que eles não dependem um do outro, mas sim de uma variável global. Data Resp.: 01/09/2022 17:12:30 Explicação: Ao trabalhar com um aplicativo corporativo, segundo a arquitetura MVC, as camadas Model e Controller são definidas ao nível do projeto interno com o terminador "ejb", e o NetBeans oferece ferramentas de automatização para a geração dos componentes necessários, com utilização de duas tecnologias específicas. Quais são as tecnologias utilizadas para as duas camadas citadas, respectivamente? 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? Acoplamento corresponde ao grau de dependência de um módulo em relação a outros módulos do sistema. Um módulo com acoplamento alto depende de vários outros módulos e tipicamente apresenta problemas. Neste contexto, a mudança em um módulo causa um efeito cascata de mudanças nos módulos dependentes. Assim, o acoplamento baixo, minimiza o impacto de mudanças. Portanto, em sistemas com acoplamento baixo, as mudanças geram impacto em poucas classes, enquanto em sistemas com acoplamento alto, as mudanças geram um efeito dominó com impacto em muitas classes. TECNOLOGIAS JPA E JEE 9. JSP e Servlet EJB e Servlet Servlet e JPA JPA e EJB JPA e JSP Data Resp.: 01/09/2022 17:12:37 Explicação: A resposta correta é: JPA e EJB 10. Padrão de desenvolvimento Front Controller e componente do tipo Servlet Padrão de desenvolvimento Flyweight e componente do tipo EJB Padrão de desenvolvimento Facade e componente do tipo EJB Padrão de desenvolvimento Service Locator e componente do tipo JNDI Padrão de desenvolvimento DAO e componente do tipo JPA Data Resp.: 01/09/2022 17:12:41 Explicação: A resposta correta é: Padrão de desenvolvimento Front Controller e componente do tipo Servlet Não RespondidaNão Gravada Gravada Exercício inciado em 01/09/2022 17:12:07.
Compartilhar