Buscar

TESTE DE CONHECIMENTO (PADRÕES DE PROJETOS DE SOFTWARE COM JAVA)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PADRÕES DE PROJETOS DE SOFTWARE COM JAVA
	
	
	 
	
	DGT1354_202008207983_TEMAS
	
	
	
		Aluno: FELIPE FERREIRA DA PAZ
	Matr.: 202008207983
	Disc.: PADRÕES DE PROJETOS  
	2023.1 EAD (G) / 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.
		Analise o propósito a seguir:
''Garantir que uma classe somente tenha uma instância em um processo de execução, fornecendo uma forma de acesso a essa única instância e impedindo que outros módulos possam ter acesso a seu construtor ''.
Assinale a alternativa com o nome do padrão que possui esse propósito:
	
	
	
	Factory Method
	
	
	Prototype
	
	
	Builder
	
	
	Abstract Factory
	
	
	Singleton
	Data Resp.: 25/05/2023 16:04:14
		Explicação:
A resposta certa é: Singleton
	
	
	 
		
	
		2.
		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:
	
	
	
	Factory Method
	
	
	Prototype
	
	
	Builder
	
	
	Singleton
	
	
	Abstract Factory
	Data Resp.: 25/05/2023 16:04:49
		Explicação:
A resposta certa é: Prototype
	
	
	02685PADRÕES GOF ESTRUTURAIS
	 
		
	
		3.
		Sobre o padrão Composite, assinale a alternativa correta:
	
	
	
	Esse padrão é orientado para construção e manipulação de grafos cíclicos de objetos.
	
	
	Esse padrão é utilizado na composição de adaptadores para serviços implementados por componentes de terceiros.
	
	
	Esse padrão permite manipular agregados e seus elementos com uma interface uniforme, isto é, com as mesmas operações.
	
	
	O conceito de polimorfismo não está presente na solução proposta pelo padrão.
	
	
	Esse padrão é apropriado para situações em que operações sobre o todo não devam ser aplicadas de forma recursiva às suas partes.
	Data Resp.: 25/05/2023 16:05:51
		Explicação:
A resposta certa é: Esse padrão permite manipular agregados e seus elementos com uma interface uniforme, isto é, com as mesmas operações.
	
	
	 
		
	
		4.
		Você está implementando um conjunto de componentes de interface gráfica com o usuário que precisa rodar em diferentes plataformas (ex.: Windows, Linux). Você quer poder evoluir a estrutura dos componentes gráficos de forma independente das implementações específicas dos componentes para cada plataforma. Portanto, você quer poder especializar os componentes gráficos de forma independente das plataformas onde esses componentes rodarão. Assinale a alternativa com o nome do padrão mais indicado para ser aplicado nesse contexto:
	
	
	
	Decorator
	
	
	Facade
	
	
	Bridge
	
	
	Adapter
	
	
	Proxy
	Data Resp.: 25/05/2023 16:06:16
		Explicação:
A resposta certa é: Bridge
	
	
	02683PADRÕES GOF COMPORTAMENTAIS
	 
		
	
		5.
		"Seja um cenário em que existem vários objetos capazes de realizar o processamento associado a uma requisição. Esses objetos são organizados em uma lista encadeada de modo que a requisição vai sendo passada do primeiro objeto receptor da requisição para o próximo da lista, e assim sucessivamente, até que o resultado desejado seja atingido".
Assinale a alternativa com o nome do padrão com esse propósito:
	
	
	
	Command
	
	
	Iterator
	
	
	Chain of Responsibility
	
	
	Mediator
	
	
	Strategy
	Data Resp.: 25/05/2023 16:08:59
		Explicação:
Gabarito: Chain of Responsibility
	
	
	 
		
	
		6.
		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.
	
	
	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.
	
	
	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.
	Data Resp.: 25/05/2023 16:10:34
		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.
	
	
	02686PADRÕES GRASP
	 
		
	
		7.
		Assinale a alternativa que descreve uma situação em que a utilização do padrão Especialista de Informação pode comprometer a coesão de um módulo.
	
	
	
	Quando definimos um objeto intermediário para mediar a comunicação entre objetos remotos.
	
	
	Quando colocamos em uma mesma classe operações de naturezas diferentes como lógica do negócio e acesso a banco de dados, uma vez que eles utilizam as mesmas informações da classe.
	
	
	Quando definimos uma classe que fornece uma interface de alto nível para módulos clientes utilizarem para disparar operações do negócio.
	
	
	Quando introduzimos uma interface abstrata em substituição a um código centralizado em um módulo com estruturas condicionais do tipo switch-case ou if-then-else.
	
	
	Quando definimos a responsabilidade por criar um objeto para a classe que contém todas as informações necessárias para realizar essa criação.
	Data Resp.: 25/05/2023 16:12:49
		Explicação:
No padrão especialista de informação é atribuída à classe que possua o conhecimento necessário para realizá-la. Assim uma classe X sujeita a duas fontes de mudança fere o princípio fundamental da coesão.
	
	
	 
		
	
		8.
		Em um sistema de informação, o desenvolvedor decide colocar em um módulo X todas as operações necessárias para a execução de um caso de uso. Esse módulo não distribui a responsabilidade com outras classes do sistema. Ele apenas utiliza classes de domínio e suas operações get/set para obter ou modificar dados presentes em objetos dessas classes. O resultado é um módulo conhecido como ''God Class'', ou seja, uma classe com muitas operações, com milhares de linhas de código.
Qual tipo de coesão está presente no módulo X conforme a descrição acima?
	
	
	
	Procedural
	
	
	Funcional
	
	
	Coincidente
	
	
	Temporal
	
	
	Lógica
	Data Resp.: 25/05/2023 16:12:56
		Explicação:
Na coesão procedural os elementos são agrupados de modo a serem executados em uma determinada sequência, utilizando diferentes conjuntos de dados.
	
	
	TECNOLOGIAS JPA E JEE
	 
		
	
		9.
		A arquitetura MVC (Model, View e Controller) é utilizada de forma ampla, na criação de sistemas cadastrais, e caracteriza-se pela divisão do sistema em três camadas, com objetivos específicos. Considerando a divisão utilizada pelo MVC, a interface de usuário e o componente DAO estariam, respectivamente, nas camadas: 
	
	
	
	View e Model 
	
	
	View e Controller  
	
	
	Model e Controller 
	
	
	Controller e Model  
	
	
	Model e View  
	Data Resp.: 25/05/2023 16:13:00
		Explicação:
A resposta correta é: View e Model 
	
	
	 
		
	
		10.
		Ao trabalharcom 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 Service Locator e componente do tipo JNDI 
	
	
	Padrão de desenvolvimento Flyweight e componente do tipo EJB 
	
	
	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 
	Data Resp.: 25/05/2023 16:13:04
		Explicação:
A resposta correta é: Padrão de desenvolvimento Front Controller e componente do tipo Servlet

Continue navegando