Prévia do material em texto
Meus Simulados Teste seu conhecimento acumulado Disc.: PADRÕES DE PROJETO DE SOFTWARE COM JAVA Aluno(a): JESUILTON FELIPE OLIVEIRA 202008036119 Acertos: 5,0 de 10,0 18/09/2022 Acerto: 0,0 / 1,0 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: Builder Factory Method Singleton Abstract Factory Prototype Respondido em 18/09/2022 21:39:04 Explicação: A resposta certa é: Prototype Acerto: 1,0 / 1,0 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: Prototype Abstract Factory Builder Singleton Factory Method Respondido em 18/09/2022 21:40:08 Explicação: Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); A resposta certa é: Builder Acerto: 0,0 / 1,0 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: Composite Singleton Decorator Bridge Flyweight Respondido em 18/09/2022 21:40:20 Explicação: A resposta certa é: Flyweight Acerto: 0,0 / 1,0 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: Composite Bridge Facade Abstract Factory Flyweight Respondido em 18/09/2022 21:40:21 Explicação: A resposta certa é: Bridge Acerto: 1,0 / 1,0 Assinale a alternativa que expressa a intenção do padrão de projeto Template Method: 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 detentor da informação sejam notificadas automaticamente para os objetos inscritos previamente como interessados em receber essas notificaçõ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. Permite capturar o estado interno de um objeto, permitindo que o seu estado seja restaurado posteriormente, sem quebrar o encapsulamento desse objeto. Encapsular uma família de algoritmos em objetos, permitindo que os módulos clientes possam utilizar esses algoritmos de forma intercambiável. Questão3 a Questão4 a Questão5 a Respondido em 18/09/2022 21:40:22 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. Acerto: 0,0 / 1,0 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: Strategy Chain of Responsibility State Command Mediator Respondido em 18/09/2022 21:40:24 Explicação: Gabarito: Command Acerto: 0,0 / 1,0 "Ao invés de colocarmos o cálculo do frete de um pedido na classe Pedido, optamos por criar uma hierarquia de classes para encapsular os diferentes algoritmos de cálculo de frete que temos no sistema". Assinale a alternativa com o nome do padrão GRASP que recomenda a criação de classes que não representam diretamente elementos concretos encontrados no domínio no negócio, seguindo uma decomposição de responsabilidades por comportamento e não por representação, como a descrita no cálculo do frete. Acoplamento Baixo. Polimorfismo. Invenção Pura. Especialista na Informação. Indireção. Respondido em 18/09/2022 21:40:26 Explicação: O padrão Invenção Pura tem como finalidade criar classes artificiais, ou seja, classes que não representam um conceito do domínio do problema. Acerto: 1,0 / 1,0 Assinale a alternativa CORRETA sobre o padrão GRASP Acoplamento: Um sistema que não faz uso do recurso de interfaces abstratas, sendo implementado apenas com Questão6 a Questão7 a Questão8 a 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. Um sistema com acoplamento baixo indica que a lógica do sistema está concentrada em poucos módulos, facilitando o seu entendimento. 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. Respondido em 18/09/2022 21:40:28 Explicação: 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. Acerto: 1,0 / 1,0 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? Padrão de desenvolvimento DAO e componente do tipo JPA 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 Flyweight e componente do tipo EJB Padrão de desenvolvimento Service Locator e componente do tipo JNDI Respondido em 18/09/2022 21:40:31 Explicação: A resposta correta é: Padrão de desenvolvimento Front Controller e componente do tipo Servlet Acerto: 1,0 / 1,0 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? Definir a interface de acesso às entidades do JPA. Definir um contexto de persistência local para o Session Bean. Definir um Stateless Session Bean. Definir a interfacede acesso local ao pool de EJBs. Questão9 a Questão10 a Definir um Stateful Session Bean. Respondido em 18/09/2022 21:40:35 Explicação: A resposta correta é: Definir a interface de acesso local ao pool de EJBs. javascript:abre_colabore('38403','293635908','5672249434');