Logo Passei Direto
Buscar

Padrões de Projeto de Software 160 Questões COMPLETAS

Ferramentas de estudo

Questões resolvidas

Qual padrão define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe instanciar?

Qual padrão fornece uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes completas?

Prover uma interface para criar famílias de objetos relacionados ou dependentes sem especificar suas classes concretas. Para qual padrão de projeto a afirmação se relaciona?

Existe um padrão GOF para implementar uma árvore de itens e tratar todos os nós, folhas ou não, de maneira uniforme. Implemente classes que representem um sistema de arquivos, com pastas e arquivos. Pastas possuem nome e diversos arquivos e subpastas. Arquivos possuem nome e tamanho em KB. Seu programa deve navegar pela árvore e imprimir seus itens e tamanhos. O texto está se referindo a qual padrão de projeto?

(ESAF - 2005) Analise as seguintes afirmacoes relacionadas a padrões de projetos e indique a opção que contenha todas as afirmações verdadeiras: I. O padrão Builder separa a construção de um objeto complexo de sua representação, de modo a que o mesmo processo de construção possa criar diferentes representações. II. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especificar suas classes completas. III. O padrão Bridge define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe será instanciada. O Bridge permite a uma classe postergar a instanciação das subclasses. IV. O Chain of responsability usa compartilhamento para suportar grandes quantidades de objetos e define uma dependência um-para-muitos entre objetos, de modo que quando um objeto muda de estado, todos os seus dependentes são automaticamente notificados e atualizados.

Analise as sentenças abaixo sobre os grupos de padrões da família GoF e, em seguida, assinale a alternativa correta: I. Os Padrões Comportamentais são projetados para organizar, gerenciar e combinar diferentes comportamentos. Podemos citar os seguintes padrões pertencentes a esse grupo: Chain of Responsibility, Command e Interpreter. II. Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões estáticas para escolher, por exemplo, quais objetos instanciar ou a quais classes delegar responsabilidade. São doze os padrões de criação: Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Abstract Factory, Builder, Factory Method, Prototype e Singleton. III. Os Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.

Analise as afirmações abaixo: I. Define uma dependência um para muitos entre objetos, de forma que, quando o objeto é alterado todos os seus dependentes são notificados e atualizados. II. Dada uma linguagem define uma representação para a sua gramática juntamente com um interpretador. III. Agrega dinamicamente responsabilidades adicionais a um objeto. As afirrmações correspondem respectivamente a:

O padrão Prototype é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que: I- O padrão de projeto Prototype declara um método chamado clone na superclasse abstrata do modelo. II- O padrão Prototype tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. III- O padrão Prototype é bastante útil para guardar o estado de um objeto em determinados momentos. Est(á)ão correta(s) a(s) afirmativa(s):

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Qual padrão define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe instanciar?

Qual padrão fornece uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes completas?

Prover uma interface para criar famílias de objetos relacionados ou dependentes sem especificar suas classes concretas. Para qual padrão de projeto a afirmação se relaciona?

Existe um padrão GOF para implementar uma árvore de itens e tratar todos os nós, folhas ou não, de maneira uniforme. Implemente classes que representem um sistema de arquivos, com pastas e arquivos. Pastas possuem nome e diversos arquivos e subpastas. Arquivos possuem nome e tamanho em KB. Seu programa deve navegar pela árvore e imprimir seus itens e tamanhos. O texto está se referindo a qual padrão de projeto?

(ESAF - 2005) Analise as seguintes afirmacoes relacionadas a padrões de projetos e indique a opção que contenha todas as afirmações verdadeiras: I. O padrão Builder separa a construção de um objeto complexo de sua representação, de modo a que o mesmo processo de construção possa criar diferentes representações. II. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especificar suas classes completas. III. O padrão Bridge define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe será instanciada. O Bridge permite a uma classe postergar a instanciação das subclasses. IV. O Chain of responsability usa compartilhamento para suportar grandes quantidades de objetos e define uma dependência um-para-muitos entre objetos, de modo que quando um objeto muda de estado, todos os seus dependentes são automaticamente notificados e atualizados.

Analise as sentenças abaixo sobre os grupos de padrões da família GoF e, em seguida, assinale a alternativa correta: I. Os Padrões Comportamentais são projetados para organizar, gerenciar e combinar diferentes comportamentos. Podemos citar os seguintes padrões pertencentes a esse grupo: Chain of Responsibility, Command e Interpreter. II. Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões estáticas para escolher, por exemplo, quais objetos instanciar ou a quais classes delegar responsabilidade. São doze os padrões de criação: Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Abstract Factory, Builder, Factory Method, Prototype e Singleton. III. Os Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.

Analise as afirmações abaixo: I. Define uma dependência um para muitos entre objetos, de forma que, quando o objeto é alterado todos os seus dependentes são notificados e atualizados. II. Dada uma linguagem define uma representação para a sua gramática juntamente com um interpretador. III. Agrega dinamicamente responsabilidades adicionais a um objeto. As afirrmações correspondem respectivamente a:

O padrão Prototype é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que: I- O padrão de projeto Prototype declara um método chamado clone na superclasse abstrata do modelo. II- O padrão Prototype tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor. III- O padrão Prototype é bastante útil para guardar o estado de um objeto em determinados momentos. Est(á)ão correta(s) a(s) afirmativa(s):

Prévia do material em texto

Qual o objetivo dos Padrões Comportamentais? Assinale a opção CORRETA.
R: O objetivo dos Padrões Comportamentais têm a ver com a maneira pela qual responsabilidades são distribuídas a classes e objetos durante a realização de uma tarefa. 
Qual padrão define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe instanciar?
R: Factory Method.
Qual padrão fornece uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes completas?
R: Abstract Factory.
Prover uma interface para criar famílias de objetos relacionados ou dependentes sem especificar suas classes concretas." . Para qual padrão de projeto a afirmação se relaciona?
R: Abstract Factory
São padrões de projeto GoF (design patterns), EXCETO:
R: Workflow
Considere a afirmativa de Gamma e Al. citada abaixo e escolha a opção correta: ¿ Em geral, todas as arquiteturas orientadas a objeto bem-estruturadas estão cheias de padrões. Uma das maneiras de medir a qualidade de um sistema orientado a objetos é avaliar se os colaboradores tomaram bastante cuidado com as colaborações comuns entre seus objetos. Focalizar em tais mecanismos durante o desenvolvimento de um sistema pode levar a uma arquitetura menor, mais simples, muito mais compreensível do que aquelas produzidas quanto padrões são ignorados.¿
R: Padrões são boas práticas e proporcionam garantia de qualidade na elaboração do código.
Existe um padrão GOF para implementar uma árvore de itens e tratar todos os nós, folhas ou não, de maneira uniforme. Implemente classes que representem um sistema de arquivos, com pastas e arquivos. Pastas possuem nome e diversos arquivos e subpastas. Arquivos possuem nome e tamanho em KB. Seu programa deve navegar pela árvore e imprimir seus itens e tamanhos. O texto está se referindo a qual padrão de projeto?
R: Composite
Relacione os padrões de projetos listados abaixo com suas respectivas finalidades:
PADRÕES DE PROJETO 
1. Facade (fachada) 
2. Decorator (decorador) 
3. Memento (lembrança) 
4. Proxy (procurador) 
5. Observer (observador) 
FINALIDADES
( 5 ) Define uma dependência um para muitos entre objetos tal que, quando o estado de um objeto muda, todos os seus dependentes são notificados e atualizados automaticamente. 
( 1 ) Fornece uma interface unificada para um conjunto de objetos que constituem um subsistema. Define uma interface de mais alto nível que torna o subsistema mais fácil de usar.
( 3 ) Sem violar o encapsulamento, captura e exterioriza o estado interno de um objeto, tal que o objeto possa ser restaurado a este estado mais tarde. 
( 2 ) Acrescenta responsabilidades adicionais a um objeto dinamicamente. Fornece uma alternativa flexível para a extensão de funcionalidade. 
( 4 ) Controla o acesso a um objeto através de outro objeto, que atua como seu substituto, ou como um envoltório. Assinale a alternativa que indica a sequência correta, de cima para baixo.
R: 5 - 1 - 3 - 2 - 4
O Design Patterns que tem a finalidade de usar compartilhamento para suportar grandes quantidades de objetos, de granularidade fina, de maneira eficiente, é denominado
R: Flyweight
Esses são padrões de projeto GoF estudados em aula, EXCETO:
R: Workflow
(ESAF - 2005) Analise as seguintes afirmações relacionadas a padrões de projetos e indique a opção que contenha todas as afirmações verdadeiras: 
I. O padrão Builder separa a construção de um objeto complexo de sua representação, de modo a que o mesmo processo de construção possa criar diferentes representações. 
II. O método Abstract Factory fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especifi car suas classes completas. 
III. O padrão Bridge define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe será instanciada. O Bridge permite a uma classe postergar a instanciação das subclasses. 
IV. O Chain of responsability usa compartilhamento para suportar grandes quantidades de objetos e define uma dependência um-para-muitos entre objetos, de modo que quando um objeto muda de estado, todos os seus dependentes são automaticamente notificados e atualizados. 
R: I e II
(CESGRANRIO - 2008 - TJ-RO - Analista Judiciário - Análise de Sistemas) Muitos frameworks utilizam um padrão de projeto (design pattern) que se baseia no princípio de projeto "Não nos chame, nós iremos chamar você" (O Princípio de Hollywood: "Don't call us, we'll call you."). Uma classe da aplicação herda de uma classe do framework que possui métodos abstratos, os quais são chamados em outros métodos concretos. A classe da aplicação sobrepõe os métodos abstratos da classe do framework com métodos concretos, permitindo que os métodos concretos da classe do framework sejam chamados. O padrão de projeto (design pattern) em questão chama-se:
R: Template Method
Analise as sentenças abaixo sobre os grupos de padrões da família GoF e, em seguida, assinale a alternativa correta: 
I. Os Padrões Comportamentais são projetados para organizar, gerenciar e combinar diferentes comportamentos. Podemos citar os seguintes padrões pertencentes a esse grupo: Chain of Responsibility, Command e Interpreter. 
II. Os Padrões de Criação fornecem um guia de como instanciar objetos. Esta ação normalmente envolve decisões estáticas para escolher, por exemplo, quais objetos instanciar ou a quais classes delegar responsabilidade. São doze os padrões de criação: Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Abstract Factory, Builder, Factory Method, Prototype e Singleton.
III. Os Padrões Estruturais definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração mútua.
R: Apenas as sentenças I e III estão corretas
Analise as afirmações abaixo:
I. Define uma dependência um para muitos entre objetos, de forma que, quando o objeto é alterado todos os seus dependentes são notificados e atualizados..
II. Dada uma linguagem define uma representação para a sua gramática juntamente com um interpretador.
III. Agrega dinamicamente responsabilidades adicionais a um objeto.
As afirrmações correspondem respectivamente a:
R: Observer, Interpreter, Decorator
Uma das categoria que tradicionalmente se classificam os padrões de projeto: Padrões de criação cujo objetivo é:
R: Define formas de instanciar objetos delegando responsabilidades
Softwares são sequencias de instruções a serem seguidas ou executadas que solucionam problemas modelados através de algoritmos com documentação associada. Quando um desenvolver projeta um software ele deseja criar um programa com um mínimo de qualidade. Com base nesse pressuposto, qual única alternativa abaixo que um dos requisitos de qualidade esperado não se enquadra para software robusto desenvolvido:
R: Interpreter (interpretável) , Secure (confiável ) e Stable (estável)
Assinale a alternativa que complete as afirmações abaixo:
I. Os padrões ________________________ se preocupam com algoritmos e atribuição de responsabilidade entre objetos.
II. Os padrões ________________________ se preocupam com a forma como as classes e objetos são compostos para formar estruturas maiores, ou seja, tratam como decompor classes e objetos para formar estruturas grandes e complexas.
III. Os padrões _________________________ abstraem o processo de instanciação. Ajudam a tornar um sistema independente de como seus objetos são criados, compostos e representados.
R: Comportamentais; estruturais; criacionais
Os padrões de projeto podem ser categorizados em três grupos: criação, estruturais e comportamentais. São padrões do grupo estrutural e do grupo criação,respectivamente:
R: Façade e singleton
Para facilitar a manutenção da aplicação, há um design pattern que tem como objetivo principal centralizar o acesso aos dados em uma única camada. Esse design pattern é o
R: DAO
Segundo Metsker, a classificação dos padrões GoF se divide em:
R: Interface, construção,responsabilidade, operações e extensões
Escolha a opção que contem, somente, padrões de interface, segundo Metsker:
R: Adapter, Facade, Composite e Bridge
Qual a função do Padrão de Method Factory?
R: Define uma interface para criar um objeto, mas deixa as subclasses decidirem que classe instanciar. O padrão permite adiar a instanciação para subclasses.
Quanto aos design patterns, é correto afirmar que:
R: Descrevem melhores práticas, bons projetos, e captam a experiência de uma maneira possível de ser usada por outros.
A família de padrões GoF é dividida em três grupos principais de padrões, a saber:
R: Padrões Comportamentais; Padrões de Criação; Padrões Estruturais
Assinale a alternativa que indica o padrão correto. ¿Especifica os tipos de objetos a serem criados usando uma instância-protótipo e cria novos objetos pela cópia desse protótipo¿
R: Prototype
O padrão Builder é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que:
I- O padrão Builder é um padrão utilizado na instanciação de objetos complexos.
II- O padrão Builder tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor.
III- O padrão Builder é bastante útil para guardar o estado de um objeto em determinados momentos.
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e II;
Qual o objetivo do padrão Builder? Assinale a opção INCORRETA.
R: Declara um método chamado clone na superclasse abstrata do modelo.
(CESGRANRIO - 2006 - Petrobrás ) Christopher Alexander afirma: "cada padrão descreve um problema no nosso ambiente e o cerne da sua solução, de tal forma que você possa usar essa solução mais de um milhão de vezes, sem nunca faze-lo da mesma maneira". Muito embora Alexander estivesse falando a cerca de padrões em construções e cidades, o que ele diz é verdadeiro em relação aos padrões de projeto orientados a objeto. Neste caso, as soluções são expressas em termos de objetos e interfaces em vez de paredes e portas, mas no cerne de ambos os tipos de padrões está a solução para um problema num determinado contexto. Quanto à indicação para o uso dos padrões de projeto é FALSO afirmar que o padrão:
R: Builder é indicado quando: uma classe não pode antecipar a classe de objetos que deve criar; uma classe quer que suas subclasses especifiquem os objetos que criam; classes delegam responsabilidade para uma dentre várias subclasses auxiliares, e você quer localizar o conhecimento de qual subclasse auxiliar que é a delegada.
Acerca dos padrões de criação e de padrões estruturais, assinale a opção correta.
R: O uso do padrão singleton apresenta como consequências uma redução do uso de variáveis globais e uma melhor organização do espaço de nomes de um software orientado a objetos.
Segundo Metsker, o padrão de projeto GoF _________________ é aplicado para substituir a geração de instâncias não-inicializadas de uma classe, fornecendo novos objetos a partir de uma classe-exemplo.
R: PROTOTYPE
Sobre o padrão ¿Builder ¿, escolha a opção que descreve seu(s) objetivo(s):
R: Separar a construção de um objeto complexo de sua representação para que o mesmo processo de construção possa criar representações diferentes
Consideram as afirmativa abaixo sobre o padrão prototype I - Declara um método chamado clone na superclasse abstrata do modelo (Prototype). Em função desta declaração, cada classe concreta derivada deve ser capaz de gerar uma nova instância de si próprio. II - , Entre as aplicações para este padrão de projeto está a facilidade de instanciar classes em tempo de execução. III Quando as instancias de uma classe apresentam poucas combinações de estados, pode ser mais conveniente definir previamente um conjunto de protótipos e cloná-los, sempre que foi necessário.
R: As afirmativas estão todas corretas
O padrão de projeto singleton é usado para restringir:
R: a instanciação de uma classe para apenas um objeto.
O padrão Prototype é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que:
I- O padrão de projeto Prototype declara um método chamado clone na superclasse abstrata do modelo.
II- O padrão Prototype tem a função de tentar minimizar a carga que os desenvolvedores têm ao ato de criar objetos dentro de um construtor.
III- O padrão Prototype é bastante útil para guardar o estado de um objeto em determinados momentos.
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e III
Segundo Metsker, o padrão de projeto GoF _________________ é aplicado para substituir a geração de instâncias não-inicializadas de uma classe, fornecendo novos objetos a partir de uma classe-exemplo.
R: PROTOTYPE
Qual é o padrão GoF criacional correspondente ao código abaixo?
public static void main(String[] args) {
	 ObraPadrao obraPadrao = new ObraPadrao();
	 ObraPadrao obraNova = obraPadrao.clonar();
	 obraNova.setValor(200000.0);
        .....
R: Prototype
Dentre as opções apresentadas para o padrão Prototype, no que se refere, as aplicações para este padrão de projeto, assinale a única que estrá correta.
R: facilidade de instanciar classes em tempo de execução.
O padrão Singleton é um Padrão de Criação GoF. Com relação aos seus objetivos podemos afirmar que:
I- O padrão de projeto Singleton declara um método chamado clone na superclasse abstrata do modelo.
II- O padrão Singleton está direcionado para as situações onde precisamos manter uma única instancia de uma classe durante toda a execução da aplicação.
III- O padrão Singleton é bastante útil para guardar o estado de um objeto em determinados momentos.
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente o item II;
(CESGRANRIO - 2006 - Petrobrás ) Christopher Alexander afirma: "cada padrão descreve um problema no nosso ambiente e o cerne da sua solução, de tal forma que você possa usar essa solução mais de um milhão de vezes, sem nunca faze-lo da mesma maneira". Muito embora Alexander estivesse falando a cerca de padrões em construções e cidades, o que ele diz é verdadeiro em relação aos padrões de projeto orientados a objeto. Neste caso, as soluções são expressas em termos de objetos e interfaces em vez de paredes e portas, mas no cerne de ambos os tipos de padrões está a solução para um problema num determinado contexto. Quanto à indicação para o uso dos padrões de projeto é FALSO afirmar que o padrão:
R: Builder é indicado quando: uma classe não pode antecipar a classe de objetos que deve criar; uma classe quer que suas subclasses especifiquem os objetos que criam; classes delegam responsabilidade para uma dentre várias subclasses auxiliares, e você quer localizar o conhecimento de qual subclasse auxiliar que é a delegada.
(CESGRANRIO - 2009) Por motivo de segurança, deseja-se adicionar registro (log) das operações efetuadas no sistema de contabilidade de uma empresa. O arquiteto do sistema decide que deve existir somente uma instância de uma classe de registro (log) e que esta será o ponto de acesso global para os demais componentes do sistema.Que padrão de projeto pode ser utilizado nesse caso?
R: Singleton.
Acerca dos padrões de criação e de padrões estruturais, assinale a opção correta.
R: O uso do padrão singleton apresenta como consequências uma redução do uso de variáveis globais e uma melhor organização do espaço de nomes de um software orientado a objetos.
O padrão de projeto Singleton é um dos padrões mais conhecidos e extensivamente utilizados em programação orientada a objetos. Sobre ele podemos afirmar I - Está direcionado para as situações onde precisamos manter uma única instancia de uma classe durante toda a execução da aplicação. II - A sua estrutura é bastante simples, existe apenas uma classe chamada Singleton, que define um método chamado Instance, responsável poder retornar aos clientes à única instancia da classe. III ¿ Na linguagem Java os modificadores states e private devem garantir uma mesma instância para todos os objetos criadose evitar acesso público;
R: As afirmativas estão todas corretas
Assinale a alternativa que indica o padrão correto. ¿Especifica os tipos de objetos a serem criados usando uma instância-protótipo e cria novos objetos pela cópia desse protótipo¿
R: Prototype
O padrão de projeto Singleton é usado para restringir:
R: A instanciação de uma classe para apenas um objeto.
Os padrões de criação abstraem o processo de instanciação. Um padrão de criação de classe usa a herança para variar a classe que é instanciada, enquanto que um padrão de criação de objeto delegará a instanciação para outro objeto.¿ Padrões Projeto, 1º edição/2000.Gamma. Segundo Metsker, 2004, o padrão de projeto _____________________ tem como solução mover a lógica de construção de uma classe para um objeto externo, a fim de reduzir a complexidade da mesma e permitir a construção gradual de objetos-alvo a partir dessa classe. Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima.
R: Builder
i) Decorator permite anexar responsabilidades adicionais a um objeto dinamicamente.
ii) Builder desacopla uma abstração de sua implementação para que os dois possam variar independentemente.
iii) Mediator fornece um substituto ou ponto através do qual um objeto possa controlar o acesso a outro.
Em relação aos itens acima está correto:
R: somente a i
Qual o objetivo do padrão Builder? Assinale a opção INCORRETA.
R: Declara um método chamado clone na superclasse abstrata do modelo.
Assinale dentre as opções abaixo, qual o padrão de projeto mais conhecidos e extensivamente utilizados em programação orientada a objetos e que está direcionado para as situações onde é preciso manter uma única instancia de uma classe durante toda a execução da aplicação.
R: Singleton
Qual padrão está representado na figura abaixo?
R: Bridge
Observe a figura abaixo e escolha dentre as opções o padrão GOF para resolver o problema com a estrutura apresentada.
R: Composite
Dado o diagrama de classe identifique o padrão GoF estrutual:
R: Composite
Construtores em Java definem uma maneira padrão de construir objetos. No entanto, depender de construtores para instanciar objetos pode nos levar a alguns problemas dos quais podemos citar, exceto:
R: Não é preciso saber a classe concreta do objeto para criá-lo
Qual o nome do padrão de projeto que pode ser utilizado para permitir que uma hierarquia de abstrações e suas diferentes implementações possam variar independentemente?
R: Bridge
Os padrões estruturais correspondem a:
R: Adapter, Bridge, Composite, Decorator, Façade, Flyweight e Proxy.
Qual padrão compõe objetos em estruturas de árvore para representarem hierarquias partes-todos e permite aos clientes tratarem de maneira uniforme os objetos individuais e as composições de objetos?
R: Composite.
Analise as afirmações abaixo:
I. Desacopla uma abstração de sua implementação, de modo que as duas possam variar independentemente.
II. Compõe objetos em estuturas de árvores que representam hieráquia todo parte.
III. Fornece uma interface simples para uma coleção de classes.
As afirrmações correspondem respectivamente a:
R:Bridge, Composite, Façade
O padrão Adpater é bastante utilizado para compatibilizar classes implementas por programadores diferentes, ou desenvolvidas em momentos diferentes, ou ainda para unir classes com interfaces diferentes em uma estrututura hierarquica única, sem precisar implementar novamente todas as funcionalidades e interfaces da classe já existente, considere as afirmativas: I - A idéia é criar uma nova classe (Adapter) com a interface padrão que se deseja para fazer a conexão com a classe já existente (Adaptee) com interface diferente da estrutura de classes que se pretende utilizar no sistema. Ii - Além de reaproveitar totalmente a classe antiga sem precisar alterar o código e entender a complexa implementação realizada, mantém a uniformidade do seu projeto original. Iii cria uma hierarquia de classes diferentes categorias de objetos sem relação de herança.
R: As afirmativas I, II, estão corretas e a afirmativa III está errada.
Imagine que em meu sistema eu tenha uma classe compra, que para fazer o pagamento, utiliza o método Billing, e que esse método espera algo que herde de uma interface IPagamento.
Cartão de crédito é uma classe abstrata que herda de IPagamento.
Boleto é uma classe que herda de IPagamento.
Visa e master são as implementações reais que utilizávamos, até então, para fazer o Billing dependendo do cartão que o cliente utilizava, e a propósito, elas herdam de CartaodeCredito. Segue o diagrama:
Porém, a loja decide que vai ter mais um tipo de cartão de crédito, terá o ¿Sorocred¿. O Analista logo pensa:  ¿Tudo bem, é só eu herdar de CartaodeCredito, implementar a forma específica de Billing e pronto! ¿.
Só que vem a surpresa: o cliente tem a própria Dll de Billing, que não pode ser alterada, ou pior: a estrutura de classe de ¿Sorocred¿ foi desenhada da seguinte maneira:
Com qual padrão GOF, você resolverá o problema?
R: Adapter
Os Padrões de Projeto (GOF) que se apresentam com o formato de uma Lista Encadeada (estrutura de dados) quando são representados por um Diagrama de Objetos (UML) e se classificam, respectivamente, como Padrão de Projeto Estrutural e Padrão de Projeto Comportamental, são conhecidos como:
R: Decorator e Chain of Responsibility
Qual padrão de projeto representado na figura abaixo?
R: Adapter
(CESGRANRIO - 2009) Ao consultar informações a respeito dos padrões de projeto Adapter e Bridge, um Analista de Sistemas identificou uma afirmativa INCORRETA. Assinale-a.
R: O Adapter é inferior ao Bridge porque não evita a replicação de código.
O padrão Bridger é um Padrão Estrutural GoF. Quando devemos usar esse padrão? Assinale a opção INCORRAETA.
R: Quando houver uma interface que permita a implementação estática;
O padrão Composite é um Padrão Estrutural GoF. Com relação aos seus objetivos podemos afirmar que:
I- O padrão de projeto Composite permite anexar responsabilidades adicionais a um objeto (em caráter dinâmico) dinamicamente.
II- O padrão Composite permite que seja encapsulado os detalhes (como se eu falasse com um aluno ou com vários alunos da mesma forma), o que permite uma programação muito mais leve.
III- O padrão Composite permite que clientes tratem objetos individuais e composições de objetos de maneira uniforme.
Est(á)ão correta(s) a(s) afirmativa(s)
R: Somente os itens II e III;
Marque a alternativa que melhor descreve uma situação típica onde poderia ser utilizado o padrão de projeto Adapter?
R: Um programador precisar utilizar uma classe que possui interface diferente da classe existente na aplicação.
Dentre as opções apresentadas assinale qual o padrão é bastante utilizado para compatibilizar classes implementas por programadores diferentes, ou desenvolvidas em momentos diferentes, ou ainda para unir classes com interfaces diferentes em uma estrutura hierárquica única, sem precisar implementar novamente todas as funcionalidades e interfaces da classe já existente.
R: Padrão Adapter
Qual o objetivo do padrão Decorator? Assinale a opção CORRETA.
R: Decorator permite anexar responsabilidades adicionais a um objeto (em caráter dinâmico) dinamicamente.
O padrão Bridger é um Padrão Estrutural GoF. Com relação aos seus objetivos podemos afirmar que (assinale a opção INCORRAETA).
R: No padrão Bridge a solução natural quando se pretende desenvolver uma determinada solução para duas plataformas diferentes é utilizar herança, implementando uma classe derivada para cada situação;
A classe java.util.Map da API de coleções de Java permite que sejam armazenados pares de objetos (chave e valor) em uma de suas implementações (as mais conhecidas são HashMap e TreeMap). No entanto, estas classes não possuem um construtor que receba como parâmetro uma matriz de duas linhas e que monte o mapa usando a primeiralinha como chave e a segunda como coluna. Qual padrão utilizar para resolver o problema acima?
R: Adapter
Imagine que você está desenvolvendo um sistema para um bar especializado em coquetéis, onde existem vários tipos de coquetéis que devem ser cadastrados para controlar a venda. Os coquetéis são feitos da combinação de uma bebida base e vários outros adicionais que compõe a bebida. Por exemplo:
Conjunto de bebidas:
Cachaça
Rum
Vodka
Tequila
Conjunto de adicionais:
Limão
Refrigerante
Suco
Leite condensado
Gelo
Açúcar
Então, como possíveis coquetéis temos:
Vodka + Suco + Gelo + Açúcar
Tequila + Limão + Sal
Cachaça + Leite Condensado + Açúcar + Gelo
Qual padrão você usaria para representar a estrutura acima?
R: Decorator
O Padrão de Projeto Estrutural (GOF) que se apresenta com o formato de uma árvore (estrutura de dados) quando é representado por um Diagrama de Objetos (UML) chama-se:
R: Composite
Programadores se deparam muitas vezes com a situação onde é preciso acrescentar responsabilidades a objetos e não a classe. Uma alternativa é atribuir dinamicamente a um dado objeto. Este padrão é chamado de:
R: Decorator
Observe a figura abaixo e escolha dentre as opções o padrão GOF para resolver o problema com a estrutura apresentada
R: Composite
Que padrão estrutural usa compartilhamento para suportar um grande número de pequenos objetos de forma eficiente. 
R: Flyweight
A classe Façade, em qualquer contexto, tem como objetivo mais amplo buscar respostas para um problema de forma transparente em um conjunto de subsistemas e fornecer uma resposta imediata. Marque a alternativa que NÃO indica uma vantagem do padrão Façade (Fachada)
R: Fazer com que o cliente conheça todas as regras de negócio para que possa realizar as mudanças.
Estruturar um sistema em subsistemas ajuda a reduzir a complexidade do problema (Gamma et al., 2000). No entanto, um objetivo comum de todos os projetos é minimizar a comunicação e as dependências entre os diferentes subsistemas. Uma das maneiras de contornar esse problema é utilizar o padrão de projeto que qual forneça uma interface única e simplificada para os recursos e facilidades mais gerais de um subsistema. Este padrão de projeto é conhecido como:
R: Façade;
Os padrões de projetos, quando aplicados ao desenvolvimento de aplicações, fornecem meios de descrever soluções comuns para problemas comuns, resultando em redução de tempo gasto com o desenvolvimento e melhoria da qualidade da aplicação. (FCC - 2009) Analise: I. É o responsável pela especificação dos tipos de objetos a serem criados usando uma "instância" prototípica e pela criação de novos objetos copiando este protótipo. II. Define uma interface de nível mais alto que torna o subsistema mais fácil de usar e fornece uma interface única para um subsistema com diversas interfaces; compõe o grupo de padrões estruturais. III. Integrante do grupo de padrões comportamentais, ele provê uma forma de acessar sequencialmente os elementos de um agregado de objetos, sem expor a representação interna desse agregado. IV. As consequências do uso deste padrão é que o encapsulamento é mantido, já que objetos usam sua própria informação para cumprir responsabilidades; leva ao fraco acoplamento entre objetos e à alta coesão, uma vez que objetos fazem tudo que é relacionado à sua própria informação. As afirmações correspondem, respectivamente, aos padrões
R: Prototype, Façade, Iterator e Expert.
Converter a interface de uma classe em outra interface esperada pelos clientes. Permite a comunicação entre classes que não poderiam trabalhar juntas devido à incompatibilidade de suas interfaces. Para qual padrão de projeto a afirmação se relaciona?
R: Nra
O padrão Flyweight é um Padrão Estrutural GoF. Quando não devemos usar esse padrão?
I- Quando o estado dos objetos não for imutável
II- Quando o tamanho do conjunto de objetos for significativamente menor que a quantidade de vezes em que eles são usados na aplicação;
III- Quando objetos podem ser usados em diferentes contextos ao mesmo tempo (agindo sempre como um objeto independente);
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente o item I;
A classe Façade, em qualquer contexto, tem como objetivo mais amplo buscar respostas para um problema de forma transparente em um conjunto de subsistemas e fornecer uma resposta imediata para a classe cliente. Assinale dentre as principais vantagens desse padrão de projeto a única que não é verdadeira.:
R: Incentivar acoplamento forte entre o subsistema e seus clientes.
Uma empresa tem, dentre outros, um sistema de vendas e outro de controle de estoque. Supondo que o sistema de vendas necessita utilizar funcionalidades do sistema de controle de estoque, qual padrão deve ser utilizado para que estas funcionalidades sejam disponibilizadas?
R: Façade
O objetivo do padrão de projeto estrutural de oFlyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela; Gamma et al (2000) recomendam sua utilização somente quando todas as condições forem verdadeiras. Assinale dentre as opções abaixo a unica condição que não é verdadeira
R: Uma aplicação utiliza um pequeno número de objetos.
Que padrão estrutural provê um ponto de atendimento para que outro objeto possa controlar o acesso ao primeiro:
R: Proxy
Quanto às vantagens, assinale a opção INCORRETA sobre o padrão Façade.
R: Quando o tamanho do conjunto de objetos for significativamente menor que a quantidade de vezes em que eles são usados na aplicação;
Em muitas situações de programação, é possível resolver o problema de acesso a um determinado objeto com a utilização de uma referência a variável desejada, este é um mecanismo de simples utilização e bastante conhecido pelos desenvolvedores de software. No entanto, quando é necessário utilizar um mecanismo mais versátil e sofisticado, por exemplo, 
- para postergar a instanciação de um objeto 
- para controlar o acesso ao mesmo
- para acessá-lo em uma máquina remota
- para gravá-lo em uma base de dados, a alternativa de utilizar uma referência ao objeto não é mais apropriada. 
- utilização de uma superclasse abstrata para definir a interface da classe desejada e uma classe derivada adicional derivada.
Marque a alternativa que indica o padrão de projeto utilizado segundo a descrição acima. 
R: Proxy
O padrão _________________ controla o acesso ao objeto original. Fornece um substituto ou marcador da localização de outro objeto para controlar o seu acesso. Qual padrão abaixo corresponde ao descrito acima?
R: Proxy
A utilização do padrão estrutural de projeto cula ideia é utilizar um substituto para o objeto real, mantendo a mesma interface do original sempre que for inconveniente, ou indesejável, acessá-lo diretamente é conhecido como:
R: Proxy
Qual padrão fornece uma interface unificada para um conjunto de interfaces em um subsistema e define uma interface de nível mais alto que torna o subsistema mais fácil de ser usado?
R: Façade
O objetivo do Flyweight é diminuir o consumo de memória, porém deve ser utilizado com cautela. Gamma et al (2000) recomendam sua utilização somente quando todas as condições abaixo forem verdadeiras, EXCETO uma. Qual delas abaixo é essa situação?
R: Quando for necessário elaborar um algoritmo ou algo complicado para separar objetos mutáveis de imutáveis;
O Padrão Flyweight é um objeto compartilhado, que pode ser usado em vários contextos, simultaneamente, pois, tem capacidade de funcionar de forma independente em cada contexto. Seus métodos e implementações não podem, em momento algum, fazer _____________________________________________________________
R: Hipóteses ou asserções sobre o contexto no qual o objeto opera.
Quanto aos padrões de projeto orientados a objetos, assinale a opção correta.
R: O Façade pode ser usado quando se deseja prover uma interface simples para um subsistema complexo; existem muitasdependências entre clientes e as classes que implementam uma abstração.
Considerando a classe de projetos GoF assinale a opção cujos padrões de projeto estão todos classificados como Estruturais:
R: adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; Proxy
Qual o objetivo do padrão Proxyr? Assinale a opção CORRETA.
R: Proxy prove um substituto ou ponto através do qual um objeto possa controlar o acesso a outro;
Qual o padrão fornece um substituto ou marcador para controlar o acesso a um objeto?
R: Proxy
Qual a vantagem do padrão Proxyr? Assinale a opção INCORRETA.
R: Permite, sempre que for desejável, criar uma interface para um conjunto de objetos com o objetivo de facilitar o uso da aplicação;
Qual padrão de projeto tem como propósito prover interface unificada para conjunto de interfaces em um subsistema, definindo uma interface de alto-nível.
R: Façade
(CESGRANRIO - 2009) O presidente de uma empresa determinou que fosse disponibilizado um sistema de vendas na Internet. No entanto, o software de controle de estoque que deve ser acessado pela aplicação de vendas é muito antigo e provê uma API (Application Programming Interface) de uso muito complicado. Para que os desenvolvedores possam acessar uma interface mais simples, o arquiteto do sistema pode determinar o uso do padrão de projeto
R: Façade
Marque a única alternativa correta sobre um cenário de aplicação do padrão de projeto Template Method
R: Implementamos partes invariantes de um algoritmo em uma classe abstrata e deixamos que o restante do código seja implementado nas subclasses
(PETROBRAS - CESGRANRIO 2010) Um dos participantes da equipe de desenvolvimento de um framework deve implementar uma operação em uma das classes desse framework. Seja X o nome dessa classe. Essa operação implementa um algoritmo em particular. Entretanto, há passos desse algoritmo que devem ser implementados pelos usuários do framework através da definição de uma subclasse de X. Sendo assim, qual o padrão de projeto do catálogo GoF (Gang of Four) a ser usado pelo desenvolvedor do framework na implementação da referida operação, dentre os listados a seguir?
R: Template Method.
Analise as seguintes sentenças que descreve as características de um padrão de projeto. Em seguida marque a alternativa que corresponde o padrão de projeto correspondente.
a. Sua aplicação é recomendada naquelas situações em que há necessidade de interpretar uma linguagem qualquer e, ao mesmo tempo, quando se quer representar sentenças da linguagem, como árvores abstratas sintáticas.
b. Descreve como projetar um conjunto de classes para representar e interpretar uma gramática para linguagens simples.
c. A estrutura do padrão sugere que a modelagem do problema seja realizada através de uma gramática recursiva.
R: Interpreter
Qual padrão define o esqueleto de um algoritmo em uma operação, postergando alguns passos para as subclasses e permite que subclasses redefinam certos passos de um algoritmo sem mudar a estrutura do mesmo?
R: Template Method
Aponte dentre as opções abaixo aquela que corresponde ao padrão que apresenta como uma desvantagens, a obrigatoriedade da definição de ao menos, uma classe para cada regra da gramática, logo, gramáticas com muitas regras são difíceis de manter e administrar.
R: Interpreter
Dentre as opções apresentadas, assinale aquela que corresponde ao padrão de projeto que sugere a implementação de um algoritmo que faz uso de diferentes métodos, diferenciando das soluções convencionais por deixar o esqueleto deste algoritmo fixo em uma superclasse abstrata.
R: Template Method
O método Arrays.sort (java.util) recebe como parâmetro um objeto do tipo Comparator que implementa um método compare(a, b) e utiliza-o para definir as regras de ordenação, assim evitamos duplicidade de código permitindo sobrescrita apenas do critério de comparação do algoritmo de ordenação, no qual os outros passos permanecem invariantes. Essa situação exemplifica qual dos padrões GOF abaixo:
R: Template Method
O padrão Chain of Responsability é um Padrão Comportamental GoF. Qual o seu objetivo? Assinale a afirmativa INCORRETA
R: Reduz a interconexão entre os objetos, ao invés de um objeto manter uma lista com todos os receptores candidatos, eles mantém uma referência única para o sucessor;
Qual padrão usar para definir uma representação de uma linguagem para sua gramática junto a um interpretador que sua representação para interpretar essas sentenças?
R: Interpreter
O padrão GoF Comportamental utilizado:
R: Observer
Analise as sentenças abaixo. 
I - A estrutura do padrão interpreter sugere que a modelagem do problema seja realizada através de uma gramática procedural.
II - O padrão Interpreter tem como desvantagem definir uma classe para cada gramática, pois quando se tem muitas gramáticas, são difíceis de manter e administrar.
III - No padrão de projeto Template Method as partes que podem variar, conforme a situação, contexto ou problema a ser resolvido, são redefinas nas classes derivadas (concretas).
IV - O padrão de projeto Template Method sugere a implementação de um algoritmo fixo em uma superclasse abstrata onde se consegue alterar o comportamento do algoritmo, sem modificar sua estrutura lógica. 
R: II - III - IV
Qual é o padrão GoF comportamental correspondente ao código abaixo?
Approver larry = new Director();
Approver sam = new VicePresident();
Approver tammy = new President();
larry.SetSuccessor(sam);
sam.SetSuccessor(tammy);
// Generate and process purchase requests
Purchase p = new Purchase(2034, 350.00, "Assets");
larry.ProcessRequest(p);
p = new Purchase(2035, 32590.10, "Project X");
larry.ProcessRequest(p);
p = new Purchase(2036, 122100.00, "Project Y");
larry.ProcessRequest(p);
.......
R: Chain of Responsability
O padrão Classe Handler é um Padrão Comportamental GoF. Quais os benefícios do padrão de projeto Chain of Responsability com a Classe Hanter?
I- O acoplamento é reduzido, pois, o padrão libera um objeto de ter que conhecer qual o outro objeto que trata de uma solicitação;
II- Reduz a interconexão entre os objetos, ao invés de um objeto manter uma lista com todos os receptores candidatos, eles mantém uma referência única para o sucessor;
III- Flexibilidade na atribuição de responsabilidades, ou seja, pode-se mudar a cadeia de objetos em tempo de execução, adicionando ou removendo objetos;
IV- A receptação não é garantida, isto é, no momento que a requisição não tem um receptor explícito, não há garantias que ela será tratada;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I, II e III;
A classe Handler é uma classe abstrata, portanto, não pode ser instanciada diretamente. Assim, para montar uma cadeia de objetos é necessário especializá-la em que tipo de classes? Assinale dentre as opções abaixo aquela que está correta.
R: Concretas
Baseando-se nas necessidades apresentadas do lado direito do quadro abaixo, relacione-as ao padrão adequado a utilização e, em seguida marque a alternativa que corresponde a sequencia numerada correspondente.
R: 4 - 3 - 1 - 2
Qual o objetivo do padrão Template Method? 
R: Definir o esqueleto de um algoritmo dentro de uma operação, deixando alguns passos a serem preenchidos pelas subclasses;
Qual padrão define o esqueleto de um algoritmo em uma operação, postergando alguns passos para as subclasses e permite que subclasses redefinam certos passos de um algoritmo sem mudar a estrutura do mesmo?
R: Template Method
Aponte dentre as opções abaixo aquela que corresponde ao padrão que apresenta como uma desvantagens, a obrigatoriedade da definição de ao menos, uma classe para cada regra da gramática, logo, gramáticas com muitas regras são difíceis de manter e administrar.
R: Interpreter
Para fazer a modelagem de um padrão de projeto (design pattern) utilizando a UML é DESNECESSÁRIO.
R: identificar as soluções específicas e particulares para o problema básicoe reificá-la como um mecanismo.
(BACEN ¿ CESGRANRIO 2010) Um arquiteto de software estuda que padrões de projeto são apropriados para o novo sistema de vendas de uma empresa. Ele deve considerar que o padrão
R: Chain of Responsibility evita o acoplamento entre o remetente de uma solicitação e seu destinatário, dando oportunidade para mais de um objeto tratar a solicitação.
Qual padrão se define uma dependência um-para-muitos entre objetos de forma que quando o objeto muda de estado todos os seus dependentes são notificados e atualizados automaticamente?
R: Observer
(CESGRANRIO - 2010) Um dos participantes da equipe de desenvolvimento de um framework deve implementar uma operação em uma das classes desse framework. Seja X o nome dessa classe. Essa operação implementa um algoritmo em particular. Entretanto, há passos desse algoritmo que devem ser implementados pelos usuários do framework através da definição de uma subclasse de X. Sendo assim, qual o padrão de projeto do catálogo GoF (Gang of Four) a ser usado pelo desenvolvedor do framework na implementação da referida operação, dentre os listados a seguir?
R: Template Method
Qual padrão define o esqueleto de um algoritmo em uma operação, postergando alguns passos para as subclasses e permite que subclasses redefinam certos passos de um algoritmo sem mudar a estrutura do mesmo?
R: Template Method
Analise as seguintes sentenças que descreve as características de um padrão de projeto. Em seguida marque a alternativa que corresponde o padrão de projeto correspondente.
a. Sua aplicação é recomendada naquelas situações em que há necessidade de interpretar uma linguagem qualquer e, ao mesmo tempo, quando se quer representar sentenças da linguagem, como árvores abstratas sintáticas.
b. Descreve como projetar um conjunto de classes para representar e interpretar uma gramática para linguagens simples.
c. A estrutura do padrão sugere que a modelagem do problema seja realizada através de uma gramática recursiva.
R: Interpreter
Qual padrão captura e externaliza um estado interno de um objeto para que o objeto possa ser restaurado para este estado mais tarde sem violar o encapsulamento?
R: Memento.
As principais aplicabilidades do padrão command de projeto são: 
I) permitir fácil inclusão de novos comandos;
II) permitir tratamento de requisições concorrentes, manter histórico de execução de comandos;
III) suportar operações para desfazer comandos e;
IV) evitar o acoplamento direto entre classes e serviços.
Podemos a firmar com certeza que:
R: As afirmativas I, II, III e IV estão corretas.
A implementação do padrão Memento é bastante simples. Normalmente é criada uma classe privada chamada Memento (ou outro nome com funcionalidades similar) dentro da classe que se pretende salvar o estado. A classe Memento deve ser instanciada com os atributos que se pretende salvar, fornecendo para tanto ------------------------ Marque dentre as opções abaixo aquela que complementa a lacuna acima de forma correta.
R: um construtor público para este fim.
(FCC - 2010) Em relação aos padrões de projetos orientados a objetos, separar dados ou lógica de negócios da interface do usuário e do fluxo da aplicação para permitir que uma mesma lógica de negócios possa ser acessada e visualizada através de várias interfaces, sem saber de quantas nem quais interfaces com o usuário estão exibindo seu estado, é característica do padrão de projeto arquitetural
R: Model-View-Controller.
O padrão Mediator é um Padrão Comportamental GoF. Como permitir que um grupo de objetos se comuniquem entre si sem que haja acoplamento entre eles?
I- Por exemplo, fazer chamadas. Eu quero chamar o colaborador 1, que quer chamar o colaborador 2. tenho que ter uma referência no colaborador 1para poder chamar o colaborador 2;
II- Por exemplo, fazer chamadas. Eu quero chamar o colaborador 1. Qualquer mudança no 2 impactaria no 1. da mesma forma, teria que ter um acoplamento entre as classes 2 e 3 para poder fazer essa referência. E isso é um grau de acoplamento que eu NÃO desejo;
III- Onde eu tenho um objeto que combina com vários e vários que se combinam com vários. Ou seja, a retirada de um objeto desse causaria, devido ao seu forte acoplamento, uma redefinição, uma refatoração, dos códigos aqui presentes;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e II;
O padrão Memento tem como objetivo criar um meio de armazenar informações e um objeto, permitindo acessar essas informações tanto para salvar o estado de um objeto específico, com Criar uma classe que permita salvar o estado pretendidoo para recuperar, sempre que for necessário. No entanto, muitas vezes o estado interno de um objeto é inacessível a objetos externos. Assinale dentre as opções abaixo aquela que se constitui em uma das maneiras de guardar este tipo de informação,
R: Criar um clone do objeto, com as informações do estado a ser armazenado;
(FGV - 2009) Os padrões de projeto orientados a objeto podem ter finalidade de criação, estrutural ou comportamental. Os padrões de criação se preocupam com o processo de criação de objetos. Os padrões estruturais lidam com a composição de classes ou de objetos. Os padrões comportamentais caracterizam as maneiras pelas quais classes ou objetos interagem e distribuem responsabilidades. 
Assinale a alternativa que apresenta apenas padrões de projeto comportamentais.
R: Mediator, Interpreter e Command.
Qual padrão usar para fornecer um meio de acessar sequencialmente os elementos de um objeto agregado sem expor a sua representação subjacente?
R: Iterator
O padrão Memento é um Padrão Comportamental GoF. Como se dá a implementação desse padrão?
I- Cria-se uma classe privada chamada Memento (ou outro nome com funcionalidades similar) dentro da classe que se pretende salvar o estado;
II- Define um objeto que encapsula a forma como um conjunto de objetos interage. Memento promove o acoplamento fraco ao evitar que os objetos se refiram explicitamente uns aos outros, permitindo que você varie suas interações independentemente;
III- A classe Memento deve ser instanciada com os atributos que se pretende salvar, fornecendo um construtor público para este fim;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e III;
Qual padrão encapsula uma solicitação como objeto permitindo parametrizar clientes com diferentes solicitações, enfileirar ou fazer log das solicitações e suportar operações que podem ser desfeitas?
R: Command
Existe um padrão de projeto que é bastante utilizado em programação de sistema para gerenciar a comunicação entre dois ou mais objetos. Ele pode ser visto como uma classe intermediária de comunicação e gerenciamento, evitando que os objetos se comuniquem de forma direta. Dentre as opções abaixo assinale aquela que está correta para a colocação acima.
R: Padrão Mediator;
Qual padrão de projeto GOF é melhor representado pela classe java.sql.ResultSet, a qual possui os métodos next() e hasnext() e é utilizada para percorrer sequencialmente as tuplas que representam o retorno de uma consulta no banco de dados.
R: Iterator
O padrão de projeto Comand apresenta uma serie aplicabilidades. Assinale dentre as opções abaixo a unica que não esta correta. permitir fácil inclusão de novos comandos,permitir isições concorrentes, manter histórico de execução de comandos, suportar operações para desfazer comandos e, principalmente, evitar o acoplamento direto entre classes e serviços. permitir tratamento de requ
R: Permitir em casos excepcionais o acoplamento direto entre classes e serviços;
A implementação do padrão Memento é bastante simples. Normalmente é criada uma classe privada chamada Memento (ou outro nome com funcionalidades similar) dentro da classe que se pretende salvar o estado. A classe Memento deve ser instanciada com os atributos que se pretende salvar, fornecendo para tanto ------------------------ Marque dentre as opções abaixo aquela que complementa a lacuna acima de forma correta.R: um construtor público para este fim.
O padrão Iterator é um Padrão Comportamental GoF. Qual o objetivo desse padrão? Assinale a única resposta CORRETA
R: Prover uma maneira de acessar os elementos de um objeto agregado sequencialmente sem expor sua representação interna;
As principais aplicabilidades do padrão command de projeto são: 
I) permitir fácil inclusão de novos comandos;
II) permitir tratamento de requisições concorrentes, manter histórico de execução de comandos;
III) suportar operações para desfazer comandos e;
IV) evitar o acoplamento direto entre classes e serviços.
Podemos a firmar com certeza que:
R: As afirmativas I, II, III e IV estão corretas.
Um padrão arquitetural que se preocupa em resolver o problema da organização objetivando facilitar a manutenção e aumentar a coesão entre classes afins e assim facilitar o reuso de código de forma ordenada e econômica, dividindo essas classes em camadas com finalidades específicas de armazenar os domínios da aplicação, as apresentações e as regras de negócio é denominado:
R: Model-View-Control
Command : Encapsula uma solicitação como um objeto, permitindo a parametrização de clientes com diferentes solicitações, o enfileiramento e o registro de solicitações e o suporte a operações que possam ser desfeitas. (Gamma et al., 2000). Sobre ele podemos afirmar com toda a certeza:
R: O objetivo do padrão de projeto Command é encapsular chamadas de métodos.
(FCC - 2010) Em relação aos padrões de projetos orientados a objetos, separar dados ou lógica de negócios da interface do usuário e do fluxo da aplicação para permitir que uma mesma lógica de negócios possa ser acessada e visualizada através de várias interfaces, sem saber de quantas nem quais interfaces com o usuário estão exibindo seu estado, é característica do padrão de projeto arquitetural
R: Model-View-Controller
Qual padrão captura e externaliza um estado interno de um objeto para que o objeto possa ser restaurado para este estado mais tarde sem violar o encapsulamento?
R: Memento
O padrão Mediator é um Padrão Comportamental GoF. Como permitir que um grupo de objetos se comuniquem entre si sem que haja acoplamento entre eles?
I- Por exemplo, fazer chamadas. Eu quero chamar o colaborador 1, que quer chamar o colaborador 2. tenho que ter uma referência no colaborador 1para poder chamar o colaborador 2;
II- Por exemplo, fazer chamadas. Eu quero chamar o colaborador 1. Qualquer mudança no 2 impactaria no 1. da mesma forma, teria que ter um acoplamento entre as classes 2 e 3 para poder fazer essa referência. E isso é um grau de acoplamento que eu NÃO desejo;
III- Onde eu tenho um objeto que combina com vários e vários que se combinam com vários. Ou seja, a retirada de um objeto desse causaria, devido ao seu forte acoplamento, uma redefinição, uma refatoração, dos códigos aqui presentes;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e II;
Iterator :Fornecer uma maneira de acessar seqüencialmente os elementos de um objeto agregado sem expor sua implementação. (Gamma et al., 2000). Sobre este padrão de projetos podemos afirma com certeza:
R: Oferece uma forma de percorrer este tipo de objeto agregado sem conhecer seus detalhes de implementação.
Quando encapsulamos requisições de usuários na forma de objetos estamos utilizando o padrão de projeto:
R: Command
O padrão Memento tem como objetivo criar um meio de armazenar informações e um objeto, permitindo acessar essas informações tanto para salvar o estado de um objeto específico, com Criar uma classe que permita salvar o estado pretendidoo para recuperar, sempre que for necessário. No entanto, muitas vezes o estado interno de um objeto é inacessível a objetos externos. Assinale dentre as opções abaixo aquela que se constitui em uma das maneiras de guardar este tipo de informação,
R: Criar um clone do objeto, com as informações do estado a ser armazenado;
Dentre as opções abaixo identifique aquela que corresponde ao padrão de projeto, cujo principal objetivo, é permitir que sejam adicionadas novas funcionalidades a classes previamente concebidas sem que haja necessidade de alterar sua implementação.
R: Visitor
Marque a alternativa que está relacionada ao padrão de projeto que é mais apropriado quando o comportamento de um objeto depende do seu estado e ele pode mudar seu comportamento em tempo de execução.
R: State
Qual padrão é melhor usado para um sistema Desktop?
R: Observer
O padrão Visitor é um Padrão Comportamental GoF. O objetivo desse padrão é:
I- Representar uma operação a ser realizada nos elementos de uma estrutura de objetos;
II- Definir uma dependência um-para-muitos entre objetos para que quando um objeto mudar de estado, todos os seus dependentes sejam notificados e atualizados automaticamente;
III- permite que você defina uma nova operação sem alterar as classes dos elementos nos quais a operação atua;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens I e III;
Qual padrão representa uma operação a ser executada nos elementos de uma estrutura de objetos e permite definir uma nova operação sem mudar as classes dos elementos sobre os quais operar?
R: Visitor
O padrão de projeto que deve ser utilizado não somente quando o comportamento de um objeto depende do seu estado, podendo ser alterado em tempo de execução, mas também quando a funcionalidade de um objeto possui condicionais grandes, chama-se:
R: State
Marque a alternativa que está relacionada com o padrão de projeto que pode ser utilizado para configurar uma classe com um dentre muitos comportamentos disponíveis.
R: Strategy
O padrão GoF comportalmental utilizado:
R: Strategy
O padrão de projeto State deve ser implementado não somente quando o comportamento de um objeto depende do seu estado, mas também quando a funcionalidade de um objeto possui _______________; Complete a lacuna com a opção correta. .
R: condicionais grandes
(COPEVE-UFAL - 2011) O diagrama de classes apresentado na figura não representa fielmente um buffer que passa por estados sucessivos de transformação. Em outras palavras, um buffer, que está inicialmente vazio, depois pode ficar parcialmente cheio e, possivelmente, pode ficar cheio. 
Dentre as opções apresentadas a seguir, qual o padrão de projetos que melhor se adequaria para modelar essa característica dinâmica do buffer?
R: State
Quando usamos padrão Strategy, qual a ideia que eu pretendo com ele?
I- A ideia é que, toda vez que esse mude um objeto, outros objetos fiquem sabendo automaticamente;
II- A ideia é encapsular códigos, algoritmos, tal que eu possa utilizar em vários objetos;
III- A ideia é criar objetos que possam atender as várias estratégias;
Est(á)ão correta(s) a(s) afirmativa(s):
R: Somente os itens II e III
Qual é o padrão responsável para separar os dados lógicos e as regras de negócio da interface do usuário e o fluxo da aplicação?
R: MVC
Marque a alternativa que está relacionada com o padrão de projeto que permite definir uma nova operação sem mudar as classes dos elementos sobre os quais opera.
R: Visitor
Qual padrão permite a um objeto alterar seu comportamento quando o seu estado interno muda parecendo que ele alterou sua classe?
R: State
(2016 - COPEVE-UFAL) A adoção de padrões de projeto proporciona uma reutilização estratégica durante o desenvolvimento de software, uma vez que promove o reuso de soluções previamente validadas e notadamente bem conhecidas (reuso de rationale). A figura apresenta um diagrama de classes que modela o controlador responsável por controlar o nível de dificuldade de um jogo eletrônico. Vale salientar que o nível de dificuldade pode ser ajustado em tempo de execução, a partir do perfil de cada jogador.
Assinale a alternativa que representa o padrão de projetos que foi utilizado no exemplo apresentado na figura.
R: State, uma vez que este padrão possui o propósito de facilitar mudanças dinâmicas na execução dos métodos.
considere a definição: Visitor: Representaruma operação a ser realizada nos elementos de uma estrutura de objetos. Visitor permite que você defina uma nova operação sem alterar as classes dos elementos nos quais a operação atua (Gamma et al., 2000). Qual das alternativas é completamente verdadeira?
R: O principal objetivo do padrão acima é permitir que sejam adicionadas novas funcionalidades a classes previamente concebidas, sem que haja necessidade de alterar sua implementação.