Logo Passei Direto
Buscar

Padrões de projeto (Design Patterns)

Ferramentas de estudo

Questões resolvidas

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!

Questões resolvidas

Prévia do material em texto

Padrões de projeto (Design Patterns)
Perguntas de Multipla Escolha sobre Padroes de Projeto (Design Patterns)
O que sao padroes de projeto (design patterns)?
a) Sao solucoes especificas para problemas tecnicos que surgem durante a implementacao do
software.
b) Sao descricoes gerais e reutilizaveis para problemas comuns de design, que podem ser
aplicadas em diferentes contextos.
c) Sao os detalhes de implementacao que orientam o desenvolvimento de novas funcionalidades.
d) Sao metodos exclusivos para resolver problemas relacionados a seguranca no sistema.
Resposta correta: b)
Explicacao: Padroes de projeto sao solucoes reutilizaveis para problemas recorrentes que surgem
no design de software. Eles nao sao solucoes completas, mas sim descricoes de boas praticas que
podem ser adaptadas conforme o contexto.
Qual e a principal vantagem de usar padroes de projeto?
a) Tornar o codigo mais complexo e dificil de entender.
b) Ajudar a criar solucoes padronizadas e facilitar a comunicacao entre os desenvolvedores.
c) Garantir que todos os projetos tenham a mesma estrutura de codigo.
d) Reduzir o numero de funcionalidades implementadas no software.
Resposta correta: b)
Explicacao: Usar padroes de projeto facilita a comunicacao entre os desenvolvedores, cria solucoes
mais eficientes e reutilizaveis, alem de permitir que problemas recorrentes sejam resolvidos de
maneira sistematica.
Qual padrao de projeto e utilizado quando e necessario garantir que uma classe tenha apenas uma
unica instancia durante a execucao do programa?
a) Factory Method
b) Singleton
c) Observer
d) Decorator
Resposta correta: b)
Explicacao: O padrao Singleton assegura que uma classe tenha apenas uma instancia ao longo da
execucao do programa, controlando a criacao de objetos e proporcionando um ponto unico de
acesso a essa instancia.
Quando utilizar o padrao "Factory Method"?
a) Quando e necessario criar uma unica instancia de uma classe.
b) Quando o tipo de objeto a ser criado nao e conhecido ate o momento de execucao.
c) Quando o sistema precisa ser altamente modular e livre de heranca.
d) Quando a aplicacao precisa de um mecanismo de comunicacao entre objetos.
Resposta correta: b)
Explicacao: O Factory Method e utilizado quando o tipo de objeto a ser criado nao e conhecido ate
o momento da execucao, permitindo que o codigo cliente defina a classe de objetos a serem
instanciados de forma flexivel.
Qual padrao de design e usado para permitir que um objeto seja observado por outros objetos sem
acoplamento direto entre eles?
a) Proxy
b) Strategy
c) Observer
d) Command
Resposta correta: c)
Explicacao: O padrao Observer permite que um objeto notifique outros objetos sobre mudancas no
seu estado sem que esses objetos estejam diretamente acoplados, promovendo um baixo
acoplamento entre os componentes.
Qual e a principal caracteristica do padrao de projeto "Decorator"?
a) Permite a criacao de novos objetos a partir de objetos existentes, adicionando funcionalidades
de forma dinamica.
b) Garante que um objeto seja instanciado apenas uma vez.
c) Facilita a comunicacao entre diferentes modulos de um sistema.
d) Impede que objetos sejam modificados durante a execucao do programa.
Resposta correta: a)
Explicacao: O padrao Decorator permite adicionar novas funcionalidades a objetos de forma
flexivel, sem alterar o codigo original do objeto, criando novas versoes do objeto dinamicamente.
O que caracteriza o padrao de projeto "Strategy"?
a) Ele e usado para delegar a responsabilidade de criar objetos a outras classes.
b) Permite que diferentes algoritmos sejam encapsulados e usados de maneira intercambiavel.
c) Garante que o codigo cliente tenha acesso a uma instancia unica de um objeto.
d) Facilita a troca de comportamentos do sistema sem alterar o codigo cliente.
Resposta correta: b)
Explicacao: O padrao Strategy permite que diferentes algoritmos sejam encapsulados em classes
distintas e usados de maneira intercambiavel, oferecendo flexibilidade para alterar o
comportamento do sistema sem modificar o codigo cliente.
Quando utilizar o padrao "Abstract Factory"?
a) Quando e necessario criar uma familia de objetos relacionados sem especificar suas classes
concretas.
b) Quando se deseja criar um unico objeto em todo o sistema.
c) Quando um objeto precisa ser substituido dinamicamente sem alterar seu tipo.
d) Quando o comportamento de um objeto deve variar em tempo de execucao.
Resposta correta: a)
Explicacao: O padrao Abstract Factory e utilizado para criar familias de objetos relacionados sem
especificar suas classes concretas. Ele permite que o sistema seja independente da forma de
criacao dos objetos.
Qual e a principal caracteristica do padrao de projeto "Adapter"?
a) Ele permite que duas interfaces incompativeis se comuniquem sem alterar o codigo original.
b) Ele e utilizado para criar objetos sem a necessidade de uma classe base.
c) Ele adiciona funcionalidades a objetos de maneira flexivel e dinamica.
d) Ele define como os objetos de um sistema devem ser instanciados.
Resposta correta: a)
Explicacao: O padrao Adapter permite que duas interfaces incompativeis se comuniquem,
adaptando uma interface para que seja compativel com outra, sem a necessidade de modificar o
codigo das classes originais.
O que significa "acoplamento" no contexto de padroes de design?
a) A medida de como os componentes de um sistema sao independentes entre si.
b) A quantidade de funcionalidades que um modulo pode oferecer.
c) A dependencia entre os componentes, ou seja, como eles interagem e se influenciam.
d) O numero de classes que um padrao de design pode criar.
Resposta correta: c)
Explicacao: O acoplamento se refere a dependencia entre os componentes do sistema. Em
padroes de design, o objetivo e minimizar o acoplamento para promover maior flexibilidade e
facilitar a manutencao e evolucao do sistema.
Qual padrao de design e utilizado quando e necessario adicionar comportamento a um objeto de
forma transparente, sem modificar sua estrutura?
a) Proxy
b) Facade
c) Decorator
d) Iterator
Resposta correta: c)
Explicacao: O padrao Decorator permite adicionar comportamento a um objeto de forma flexivel,
sem alterar sua estrutura original, decorando o objeto com novas funcionalidades.
Qual e a principal vantagem de utilizar o padrao "Facade"?
a) Tornar o sistema mais complexo ao agregar muitas funcionalidades em uma unica classe.
b) Fornecer uma interface simplificada para um conjunto complexo de subsistemas.
c) Resolver problemas de performance no sistema.
d) Permitir que os objetos interajam diretamente com o banco de dados.
Resposta correta: b)
Explicacao: O padrao Facade oferece uma interface simplificada para um conjunto complexo de
subsistemas, facilitando a interacao com sistemas complexos sem expor sua complexidade ao
cliente.
O que e o padrao "Composite" e quando ele deve ser utilizado?
a) Ele permite criar objetos que podem ser usados de forma recursiva, como arvores de objetos.
b) Ele e utilizado para substituir o uso de heranca em sistemas complexos.
c) Ele oferece uma solucao para objetos que precisam de multiplos comportamentos.
d) Ele simplifica a interacao entre objetos e o banco de dados.
Resposta correta: a)
Explicacao: O padrao Composite e usado para tratar objetos individuais e colecoes de objetos de
forma uniforme, permitindo criar hierarquias de objetos compostos, como arvores de objetos, em
que os elementos podem ser tratados da mesma maneira.
Qual padrao de design deve ser utilizado quando e necessario que um objeto se comporte como
um substituto de outro objeto, controlando o acesso a ele?
a) Proxy
b) Observer
c) Builder
d) Command
Resposta correta: a)
Explicacao: O padrao Proxy e utilizado para criar um objeto que age como substituto de outro
objeto, controlando o acesso a ele e podendo adicionar funcionalidades como controle de acesso,
cache ou controle de recursos.
O padrao "Command" e utilizado quando:
a) E necessarioexecutar acoes de forma assincrona.
b) Os objetos precisam de uma interface para se comunicarem com o sistema de persistencia de
dados.
c) Deve ser permitido que uma solicitacao seja transformada em um objeto que encapsula uma
acao e seus parametros.
d) E necessario controlar o numero de instancias de objetos em um sistema.
Resposta correta: c)
Explicacao: O padrao Command encapsula uma solicitacao como um objeto, permitindo que
parametros sejam passados e armazenados de maneira que possam ser executados
posteriormente. Esse padrao e util em sistemas onde e necessario desacoplar o remetente da
solicitacao e o receptor da acao.
Qual padrao de design facilita a implementacao de uma sequencia de operacoes em objetos que
podem ser armazenadas e recuperadas posteriormente?
a)