Logo Passei Direto
Buscar

Padrões de Projeto GoF e GRASP

User badge image
thatty thatty

em

Ferramentas de estudo

Questões resolvidas

A recomendação é: atribua a responsabilidade pela execução de uma operação à classe que possua as informações necessárias para realizá-la. Assinale a opção que contenha o padrão GRASP que estabelece essa recomendação de projeto:

a) Especialista
b) Criador
c) Baixo Acoplamento
d) Alta Coesão
e) Polimorfismo

Assinale a afirmativa falsa sobre padrões de projeto:
Padrões facilitam o desenvolvimento, pois permitem a utilização de soluções bem-sucedidas em problemas similares.
É comum um iniciante achar que os padrões devem estar por toda a implementação e acabar fazendo uso inadequado deles.
Decidir se um padrão pode ser empregado em um problema específico nem sempre é uma tarefa fácil.
Um padrão não pode ser adaptado ao ser aplicado em um problema específico.
Padrões fornecem uma linguagem comum para os desenvolvedores.
A
B
C
D
E

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Questões resolvidas

A recomendação é: atribua a responsabilidade pela execução de uma operação à classe que possua as informações necessárias para realizá-la. Assinale a opção que contenha o padrão GRASP que estabelece essa recomendação de projeto:

a) Especialista
b) Criador
c) Baixo Acoplamento
d) Alta Coesão
e) Polimorfismo

Assinale a afirmativa falsa sobre padrões de projeto:
Padrões facilitam o desenvolvimento, pois permitem a utilização de soluções bem-sucedidas em problemas similares.
É comum um iniciante achar que os padrões devem estar por toda a implementação e acabar fazendo uso inadequado deles.
Decidir se um padrão pode ser empregado em um problema específico nem sempre é uma tarefa fácil.
Um padrão não pode ser adaptado ao ser aplicado em um problema específico.
Padrões fornecem uma linguagem comum para os desenvolvedores.
A
B
C
D
E

Prévia do material em texto

Você acertou 9 de 10 questões
Verifique o seu desempenho e continue treinando! Você pode refazer o exercício quantas vezes
quiser.
Verificar Desempenho
A
B
1 Marcar para revisão
Assinale a alternativa que contenha o padrão GoF aplicável quando temos diferentes implementações
de uma operação em que alguns passos são comuns e outros são específicos de cada
implementação:
Factory Method
Facade
C
D
E
Adapter
Strategy
Template Method
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O padrão GoF que se aplica quando temos diferentes implementações de uma operação, onde
alguns passos são comuns e outros são específicos de cada implementação, é o Template
Method. Este padrão de projeto permite definir o esqueleto de um algoritmo em uma operação,
adiando alguns passos para as subclasses. Template Method permite que subclasses redefinam
certos passos de um algoritmo sem alterar a estrutura do algoritmo.
2 Marcar para revisão
"Implementamos em um único módulo aspectos de implementação de interface com o usuário, lógica
do negócio e acesso a dados". Assinale o princípio SOLID que está sendo diretamente violado por
essa estratégia de implementação:
A
B
C
D
E
Princípio da Inversão de Dependências
Princípio Open Closed
Princípio da Segregação de Interfaces
Princípio da Responsabilidade Única
Princípio de Substituição de Liskov
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
A estratégia de implementação descrita no enunciado viola o Princípio da Responsabilidade
Única. Este princípio, parte dos princípios SOLID, afirma que uma classe ou módulo deve ter
apenas uma razão para mudar, ou seja, deve ter apenas uma responsabilidade. No caso
apresentado, o módulo está lidando com a interface do usuário, a lógica do negócio e o acesso a
dados, o que é uma clara violação deste princípio, pois o módulo tem mais de uma
responsabilidade.
A
B
C
D
E
3 Marcar para revisão
Assinale a opção que contenha o padrão GRASP que possui uma estrutura de solução similar ao
padrão GoF Facade:
Criador
Baixo Acoplamento
Alta Coesão
Controlador
Polimorfismo
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O padrão GRASP que possui uma estrutura de solução similar ao padrão GoF Facade é o
Controlador. O padrão Controlador é responsável por lidar com eventos do sistema. Ele recebe a
entrada do usuário e a traduz em uma ação a ser realizada pelo sistema. Isso é semelhante ao
A
B
C
D
E
padrão Facade do GoF, que fornece uma interface unificada para um conjunto de interfaces em
um subsistema, tornando o subsistema mais fácil de ser manipulado.
4 Marcar para revisão
A recomendação é: atribua a responsabilidade pela execução de uma operação à classe que possua
as informações necessárias para realizá-la. Assinale a opção que contenha o padrão GRASP que
estabelece essa recomendação de projeto:
Especialista
Criador
Baixo Acoplamento
Alta Coesão
Polimorfismo
A
B
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O padrão GRASP denominado "Especialista" é o que estabelece a recomendação de atribuir a
responsabilidade pela execução de uma operação à classe que possui as informações
necessárias para realizá-la. Esse padrão sugere que a responsabilidade deve ser designada à
classe que tem a maior parte das informações necessárias para cumprir a responsabilidade.
Portanto, a alternativa correta é a "Especialista".
5 Marcar para revisão
Assinale a alternativa que descreve o padrão GoF Adapter:
Esse padrão constrói um objeto complexo, usando objetos simples e adaptáveis de forma
sequencial.
Esse padrão permite a utilização de múltiplas implementações proprietárias da mesma
funcionalidade, por meio de uma interface padronizada que é traduzida para as diferentes
interfaces proprietárias.
C
D
E
Esse padrão permite a criação de objetos duplicados, sem prejudicar a performance do
sistema.
Esse padrão esconde a complexidade do sistema e fornece uma interface mais simples para
um módulo cliente.
Esse padrão é utilizado para adaptar o estado de um objeto, permitindo que ele retorne a
um estado anterior.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O padrão GoF Adapter, como descrito na alternativa B, permite a utilização de múltiplas
implementações proprietárias da mesma funcionalidade. Ele faz isso por meio de uma interface
padronizada que é traduzida para as diferentes interfaces proprietárias. Isso significa que,
independentemente da implementação específica, o padrão Adapter permite que diferentes
sistemas ou componentes de software trabalhem juntos de maneira eficiente, mesmo que suas
interfaces sejam diferentes. Portanto, o padrão Adapter é uma solução eficaz para o problema
de incompatibilidade de interfaces.
6 Marcar para revisão
Questão 6 de 10
Corretas �9�
Incorretas �1�
Em branco �0�
1 2 3 4 5
6 7 8 9 10
Exercicio Introdução a Padrões De Projeto � Design Patterns Sair
A
B
C
D
E
"Implementar em um único módulo aspectos de implementação de interface com o usuário, lógica do
negócio e acesso a dados". Assinale o padrão GRASP que está sendo diretamente violado por essa
estratégia de implementação:
Baixo Acoplamento
Criador
Controlador
Polimorfismo
Alta Coesão
Resposta incorreta
Opa! A alternativa correta é a letra E. Confira o gabarito comentado!
Gabarito Comentado
O padrão GRASP que está sendo diretamente violado por essa estratégia de implementação é a
Alta Coesão. A Alta Coesão é um princípio de design de software que busca garantir que cada
módulo ou classe de um sistema tenha responsabilidades bem definidas e limitadas. Ao
implementar aspectos de interface com o usuário, lógica do negócio e acesso a dados em um
único módulo, estamos violando esse princípio, pois estamos concentrando muitas
A
B
C
D
E
responsabilidades em um único módulo, o que pode levar a problemas de manutenção e
evolução do software no futuro.
7 Marcar para revisão
Assinale a alternativa que define a intenção do princípio da Segregação de Interfaces:
Cada módulo deve ter uma, e apenas uma, razão para mudar.
Cada módulo deve estar aberto para extensões, mas fechado para modificações.
Um tipo deve poder ser substituído por qualquer um de seus subtipos, sem alterar o correto
funcionamento do sistema.
Clientes de um módulo não devem ser forçados a depender de operações que eles não
utilizem.
Entidades concretas devem depender de abstrações, e não de outras entidades concretas.
A
B
C
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O princípio da Segregação de Interfaces, representado pela alternativa D, afirma que os clientes
de um módulo não devem ser forçados a depender de operações que eles não utilizem. Isso
significa que um bom design de software deve evitar a dependência desnecessária de
funcionalidades que não são utilizadas, tornando o sistema mais modular e menos propenso a
erros e complexidades desnecessárias.
8 Marcar para revisão
"Entidades concretas devem estar acopladas a abstrações, e não a outras entidades concretas".
Assinale o princípio SOLID correspondente a essa recomendação:
Princípio Open Closed
Princípio da Segregação de Interfaces
Princípio da Inversão de Dependências
D
E
Princípio da Responsabilidade Única
Princípio de Substituição de Liskov
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O princípio SOLID que corresponde à recomendação de que "entidades concretas devem estar
acopladas a abstrações, e não a outras entidades concretas" é o Princípio da Inversão de
Dependências. Este princípio sugere quedevemos depender de abstrações, não de
concretizações. Ou seja, o código deve depender de interfaces e não de classes concretas,
permitindo assim maior flexibilidade e facilitando a manutenção do código.
9 Marcar para revisão
"Encapsular uma família de algoritmos em um conjunto de classes que correspondem a diferentes
implementações de uma mesma funcionalidade". Assinale a opção com o nome do padrão que possui
esse propósito:
A
B
C
D
E
Factory Method
Facade
Adapter
Strategy
Template Method
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O padrão Strategy é o que encapsula uma família de algoritmos em um conjunto de classes que
correspondem a diferentes implementações de uma mesma funcionalidade. Este padrão permite
que o algoritmo varie independentemente dos clientes que o utilizam. Portanto, a alternativa
correta é a letra D� Strategy.
A
B
C
D
E
10 Marcar para revisão
Assinale a afirmativa falsa sobre padrões de projeto:
Padrões facilitam o desenvolvimento, pois permitem a utilização de soluções bem-
sucedidas em problemas similares.
É comum um iniciante achar que os padrões devem estar por toda a implementação e
acabar fazendo uso inadequado deles.
Decidir se um padrão pode ser empregado em um problema específico nem sempre é uma
tarefa fácil.
Um padrão não pode ser adaptado ao ser aplicado em um problema específico.
Padrões fornecem uma linguagem comum para os desenvolvedores.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
A alternativa D é falsa. Na verdade, um dos grandes benefícios dos padrões de projeto é a sua
adaptabilidade. Eles fornecem uma estrutura que pode ser modificada para se adequar a
diferentes problemas. Portanto, ao contrário do que a alternativa sugere, um padrão de projeto
pode, sim, ser adaptado ao ser aplicado em um problema específico.

Mais conteúdos dessa disciplina