Buscar

PADROES DE PROJETO

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 5 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 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

Continue navegando