Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disc.: PADRÕES DE PROJETO DE SOFTWARE COM JAVA Aluno(a): 1° SIMULADO Acertos: 10,0 de 10,0 18/04/2022 1a Questão Acerto: 1,0 / 1,0 Analise o propósito a seguir: ''Permitir a criação de uma família de objetos relacionados ou dependentes, de forma que o módulo cliente não precise conhecer os objetos específicos das diferentes famílias, lidando apenas com as interfaces genéricas dos produtos dessas famílias''. Assinale a alternativa com o nome do padrão que possui esse propósito: Singleton Prototype Builder Abstract Factory Factory Method Respondido em 18/04/2022 00:03:58 Explicação: A resposta certa é: Abstract Factory 2a Questão Acerto: 1,0 / 1,0 Sobre o padrão Factory Method, assinale a alternativa correta: Sua implementação envolve a aplicação do conceito de polimorfismo. Seu propósito é permitir a criação de uma fábrica por meio da cópia de um objeto existente. Cada classe pode implementar no máximo um factory method. Sua implementação visa evitar a criação de variáveis globais. Esse padrão não é utilizado na implementação de frameworks. Respondido em 18/04/2022 00:05:36 Explicação: A resposta certa é: Sua implementação envolve a aplicação do conceito de polimorfismo. 3a Questão Acerto: 1,0 / 1,0 Conseguir adicionar um novo fornecedor externo de um serviço já utilizado por um sistema, apenas adicionando um módulo que seja capaz de converter uma requisição de uma interface conhecida pelo sistema para a interface proprietária fornecida pelo componente externo é um dos efeitos obtidos com a aplicação de qual padrão? Bridge Flyweight Facade Proxy Adapter Respondido em 18/04/2022 00:06:56 Explicação: A resposta certa é: Adapter 4a Questão Acerto: 1,0 / 1,0 Sobre o padrão Composite, assinale a alternativa correta: O conceito de polimorfismo não está presente na solução proposta pelo padrão. Esse padrão permite manipular agregados e seus elementos com uma interface uniforme, isto é, com as mesmas operações. Esse padrão é utilizado na composição de adaptadores para serviços implementados por componentes de terceiros. Esse padrão é orientado para construção e manipulação de grafos cíclicos de objetos. 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. Respondido em 18/04/2022 00:07:57 Explicação: A resposta certa é: Esse padrão permite manipular agregados e seus elementos com uma interface uniforme, isto é, com as mesmas operações. 5a Questão Acerto: 1,0 / 1,0 Sobre o padrão Mediator, assinale a alternativa correta: Pode ser aplicado em conjunto com o padrão Observer. Faz a mediação da execução de um conjunto de algoritmos paralelos, de forma que não haja problemas de sincronização. Transforma uma interação entre objetos de uma estrutura 1-N para uma estrutura N-N. Encapsula requisições em objetos, mediando o registro do histórico das requisições e o gerenciamento de uma fila de requisições. Permite definir um conjunto de passos em uma superclasse, sendo os passos comuns implementados como métodos dessa superclasse, enquanto os passos específicos são implementados nas suas subclasses. Respondido em 18/04/2022 00:08:42 Explicação: Gabarito: Pode ser aplicado em conjunto com o padrão Observer. 6a Questão Acerto: 1,0 / 1,0 Assinale a alternativa que expressa a intenção do padrão de projeto Template Method: Encapsular uma família de algoritmos em objetos, permitindo que os módulos clientes possam utilizar esses algoritmos de forma intercambiável. 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. 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. 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. Respondido em 18/04/2022 00:12:00 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. 7a Questão Acerto: 1,0 / 1,0 Assinale a alternativa CORRETA sobre o padrão GRASP Coesão. Um módulo com coesão alta é aquele que concentra operações logicamente relacionadas envolvendo diferentes tecnologias ou sistemas externos. Um módulo com coesão alta é aquele que concentra o código das funções mais importantes do sistema. Um módulo com coesão baixa é aquele que possui um propósito bem definido. Um módulo com coesão baixa é aquele que depende de um pequeno conjunto de módulos. Um módulo com coesão alta reúne elementos que contribuem para que o módulo realize o seu propósito específico. Respondido em 18/04/2022 00:14:02 Explicação: Coesão é um conceito para avaliar se as responsabilidades de um módulo estão relacionadas e possuem o mesmo propósito. Assim, coesão alta constitui módulos que tenham um propósito bem definido. 8a Questão Acerto: 1,0 / 1,0 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? Coincidente Procedural Temporal Lógica Funcional Respondido em 18/04/2022 00:15:27 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. 9a Questão Acerto: 1,0 / 1,0 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: Controller e Model View e Model View e Controller Model e View Model e Controller Respondido em 18/04/2022 00:15:57 Explicação: A resposta correta é: View e Model 10a Questão Acerto: 1,0 / 1,0 Mesmo que as novas tecnologias adotem anotações, no lugar de arquivos XML, para efetuar diversas configurações, ainda temos a necessidade de utilizar um arquivo nesse formato, no ambiente do JPA, com a responsabilidade de definir parâmetros globais e a conexão com o banco de dados. Qual o nome do arquivo? web.xml readme.txt manifest persistence.xml context.xml
Compartilhar