Prévia do material em texto
25/09/2023, 16:31 EPS https://simulado.estacio.br/alunos/ 1/4 Disciplina: PADRÕES DE PROJETOS DE SOFTWARE COM JAVA AVS Aluno: POLIANA PAULO FERREIRA 202007408519 Turma: 9001 DGT1354_AVS_202007408519 (AG) 19/06/2023 15:20:26 (F) Avaliação: 7,00 pts Nota SIA: 9,00 pts ENSINEME: TECNOLOGIAS JPA E JEE 1. Ref.: 3990967 Pontos: 1,00 / 1,00 Padrões arquiteturais de�nem 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 per�l funcional especí�co. Plataformas de objetos distribuídos, como o CORBA, trabalham em um padrão arquitetural denominado: Pipeline Event-Driven Broker PAC MVC 2. Ref.: 3990960 Pontos: 1,00 / 1,00 A arquitetura oferecida pelo JPA modi�cou a forma do Java lidar com os dados, e o conhecimento acerca de suas características é fundamental para todo programador que utilize a plataforma. Assinale a alternativa INCORRETA acerca do JPA: Trabalha com código anotado Java. Com a adoção do JPA eliminamos a necessidade do JDBC. Permite mapear os relacionamentos da base de dados. Precisa de um arquivo de con�guração denominado persistence.xml. É o mecanismo padrão de ORM do Java. 02683 - PADRÕES GOF COMPORTAMENTAIS 3. Ref.: 6068991 Pontos: 1,00 / 1,00 Esse padrão implementa uma lista encadeada de objetos, em que cada objeto pode realizar o processamento de uma requisição ou repassá-la para o próximo objeto da sequência, de forma similar à dinâmica de tratamento de exceções no Java. Assinale a alternativa com o nome do padrão descrito no enunciado: Mediator Command Visitor Chain of Responsibility Iterator javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990967.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990967.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990960.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990960.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6068991.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6068991.'); 25/09/2023, 16:31 EPS https://simulado.estacio.br/alunos/ 2/4 4. Ref.: 6068908 Pontos: 1,00 / 1,00 Sobre o padrão Observer, assinale a alternativa correta: O conceito de polimor�smo não está presente na solução proposta pelo padrão. É responsável por observar e promover as mudanças de estado de um objeto que possui um ciclo de vida complexo. De�ne uma cadeia de objetos responsáveis pelo processamento de uma requisição, em que cada objeto da cadeia é responsável por observar eventos gerados por um elemento central, realizar algum processamento e noti�car o próximo objeto da sequência para continuar o processamento. É frequentemente utilizado na implementação de interfaces grá�cas complexas, em que uma fonte de informação precisa estar sincronizada com diferentes visualizações apresentadas simultaneamente para o usuário. Permite o acesso sequencial a objetos organizados em uma coleção, sem expor a representação interna dessa coleção. 02684 - PADRÕES GOF DE CRIAÇÃO 5. Ref.: 6041112 Pontos: 0,00 / 1,00 Reduzir a necessidade de criar hierarquias paralelas de classes ou de criar subclasses apenas para instanciar objetos especí�cos é um dos efeitos obtidos com a aplicação de qual padrão? Singleton Builder Factory Method Abstract Factory Prototype 6. Ref.: 6041320 Pontos: 0,00 / 1,00 Analise a estratégia de solução a seguir: ''De�nir 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í�co de cada tipo de�nido em uma família de produtos''. Assinale a alternativa com o nome do padrão que de�ne essa estratégia: Singleton Abstract Factory Prototype Builder Factory Method 02685 - PADRÕES GOF ESTRUTURAIS 7. Ref.: 6041177 Pontos: 1,00 / 1,00 javascript:alert('C%C3%B3digo da quest%C3%A3o: 6068908.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6068908.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041112.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041112.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041320.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041320.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041177.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6041177.'); 25/09/2023, 16:31 EPS https://simulado.estacio.br/alunos/ 3/4 Sobre o padrão Facade, assinale a alternativa correta: O padrão Facade visa fornecer aos módulos clientes uma interface de alto nível para a instanciação de objetos complexos. O padrão Facade permite adicionar funcionalidades de alto nível de abstração a componentes já existentes. Com a aplicação do padrão Facade, os módulos clientes passam a depender apenas de uma interface de alto nível oferecida por um subsistema, não podendo utilizar diretamente elementos de�nidos dentro desse subsistema. O padrão Facade fornece uma interface de alto nível para a manipulação de uma hierarquia de objetos complexos. Com a aplicação do padrão Facade, os módulos clientes podem utilizar um componente ou subsistema por meio de uma interface de alto nível. 8. Ref.: 6040773 Pontos: 1,00 / 1,00 Você está desenvolvendo um sistema que precisa se integrar com diferentes sistemas de despacho de produtos fornecidos por terceiros. Seu objetivo é isolar os módulos clientes das implementações especí�cas fornecidas pelos terceiros. Para isso, você de�ne uma interface genérica do serviço de despacho que abstrai essas diferentes implementações, e cria pequenos módulos que traduzem essa interface genérica nas chamadas especí�cas requeridas pela interface de cada sistema disponibilizado pelos terceiros. Assinale a alternativa com o nome do padrão que corresponde a essa estratégia de solução: Bridge Facade Composite Adapter Proxy 02686 - PADRÕES GRASP 9. 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 �nal int LIGAR = 1; public static �nal 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 javascript:alert('C%C3%B3digo da quest%C3%A3o: 6040773.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6040773.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6076570.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6076570.'); 25/09/2023, 16:31 EPS https://simulado.estacio.br/alunos/ 4/4 break; } } public class Exemplo { public static void main(String [] args) { Lampada lampada = new Lampada(); Lampada.realizarOperacao(Lampada.LIGAR); } } Acoplamento de Estrutura. Acoplamento Funcional. Acoplamento Global. Acoplamento Externo. Acoplamento de Controle. 10. Ref.: 6076723 Pontos: 1,00 / 1,00 Um amigo seu está desenvolvendo um sistema com dezenas de casos de uso. Esse sistema pode ser usado em uma interface web e em um aplicativo móvel. Você o aconselha a criar uma classe para cada caso de uso que �cará responsável por receber os eventos lógicos recebidos dessas interfaces e coordenar a produção das respostas que o sistema deve produzir para esses eventos. Assinale a alternativa com o nome do padrão GRASP descrito na recomendação descrita: Indireção. Mediador. Controlador. Criador. Polimor�smo. javascript:alert('C%C3%B3digo da quest%C3%A3o: 6076723.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 6076723.');