Baixe o app para aproveitar ainda mais
Prévia do material em texto
PADRÕES DE PROJETO DE SOFTWARE COM JAVA Lupa Calc. EEX0129_202001033319_TEMAS Aluno: GIRLENO SILVEIRA LIMA Matr.: 202001033319 Disc.: PADRÕES DE PROJ 2022.1 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. 1. Analise o propósito a seguir: ''Implementar a instanciação de objetos utilizando uma estrutura de herança, em que a superclasse define uma operação de criação de um produto genérico, e cada subclasse define a implementação dessa operação, criando um produto específico derivado do produto genérico definido na superclasse''. Assinale a alternativa com o nome do padrão que possui esse propósito: Abstract Factory Factory Method Singleton Prototype Builder Data Resp.: 08/04/2022 14:45:58 Explicação: A resposta certa é: Factory Method 2. QUESTÃO (6093782) SEM ENUNCIADO. 3. 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: Decorator Bridge Composite Singleton Flyweight Data Resp.: 08/04/2022 14:46:32 Explicação: A resposta certa é: Flyweight 4. Possibilitar a manipulação de objetos individuais e de agregados de uma estrutura hierárquica (árvore) de objetos por meio do mesmo conjunto de operações, sem que o módulo cliente precise fazer a distinção entre o tipo do objeto manipulado (individual ou agregado). Assinale a alternativa com o nome do padrão que possui esse propósito: Composite Flyweight Bridge Adapter Proxy Data Resp.: 08/04/2022 14:46:51 Explicação: A resposta certa é: Composite 5. Você está desenvolvendo um sistema que produz informações guardadas em um ou mais objetos que só devem ser armazenados em um banco de dados após o processamento ser concluído. Entretanto, esses dados estão vinculados a uma sessão de usuário, que pode ser interrompida em função de problemas de conexão. Esse padrão oferece uma solução que permite que um objeto A capture e salve todo o estado de um objeto B da sessão, sem que A tenha que quebrar o encapsulamento de B, tornando possível a restauração do estado do objeto B, a partir de um estado capturado anteriormente por A. Assinale a alternativa com o nome do padrão que corresponde a essa estratégia de solução: Memento Command Mediator Observer Strategy Data Resp.: 08/04/2022 14:47:14 Explicação: Gabarito: Memento 6. Você está desenvolvendo um sistema para acompanhar as cotações da bolsa de valores. As cotações podem ser acompanhadas na interface com usuário na forma textual (ticker da ação e o seu valor) e na forma de um gráfico de candlesticks, apresentando o histórico das cotações em um período do tempo. As duas formas de visualização devem estar em sincronia com as variações que ocorrem com o valor da cotação das ações. Assinale a alternativa com o nome do padrão que pode ser aplicado para resolver esse problema de sincronização de visualizações de um conjunto de informações com a sua fonte. State Strategy Mediator Iterator Observer Data Resp.: 08/04/2022 14:47:43 Explicação: Gabarito: Observer 7. Assinale a alternativa CORRETA sobre o padrão GRASP Acoplamento: 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. 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 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. Data Resp.: 08/04/2022 14:47:55 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. 8. Assinale a alternativa que contém tipos de coesão de um módulo em ordem do tipo de coesão mais baixa para a mais alta: Lógica - Coincidente - Sequencial Procedural - Lógica - Funcional Temporal - Lógica - Procedural Procedural - Sequencial - Comunicação Coincidente - Temporal - Sequencial Data Resp.: 08/04/2022 14:48:02 Explicação: A coesão de um módulo é classificada de acordo com o critério utilizado para reunir o conjunto dos elementos que o compõem. Em ordem de um nível baixo para o mais alto temos: coesão Coincidente onde os elementos estão agrupados em um módulo de forma arbitrária. Seguido da Temporal quando todas as operações são executadas na inicialização do sistema. E a Sequencial, onde resultados de um passo são utilizados como entrada para o passo seguinte. 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: Model e Controller Model e View Controller e Model View e Controller View e Model Data Resp.: 08/04/2022 14:48:12 Explicação: A resposta correta é: View e Model 10. 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? context.xml persistence.xml readme.txt manifest web.xml Data Resp.: 08/04/2022 14:48:16 Explicação: A resposta correta é: persistence.xml
Compartilhar