Buscar

Padrões de Projeto de Software - Padrões de criação AV - AVS - AV1 - AV2 - AV3

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

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 6, do total de 32 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

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 9, do total de 32 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

Prévia do material em texto

-Padrão Abstract Factory (Fábrica Abstrata) 
 
A intenção deste padrão é fornecer uma “fábrica” de objetos sem que os clientes 
conheçam efetivamente as classes concretas. 
 
Considere aplicar o padrão Abstract Factory quando um sistema deve ser independente de como 
os seus produtos são criados ou representados. É especialmente válido quando se deseja criar uma 
família de produtos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
*void meramente ilustrativo. 
 
- Conseqüências do Abstract Factory 
 
- isola classes concretas; 
 
- troca de família de produtos 
 
- Promove harmonia entre produtos; 
 
 
01. (ESAF ‐ 2005) Analise as seguintes afirmações relacionadas a padrões de projetos: 
 
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. 
 
02. O objeto criado no passo anterior irá instanciar conexões e consultas correspondentes ao 
tipo de DB criado; isto é, caso um DB XML tenha sido instanciado, apenas consultas XML 
e conexões XML serão instanciadas; caso um DB SQL tenha sido instanciado, apenas 
consultas SQL e conexões SQL serão instanciadas. 
 
O diagrama de classe a seguir ilustra a estrutura descrita acima. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Qual padrão de projeto foi utilizado na solução proposta? 
 
a) Adapter 
b) Builder 
c) Composite 
d) Abstract Factory 
 e)Chain of Responsibility 
 
03. Analise as seguintes afirmações relacionadas a padrões de projetos: 
 
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. 
 
Indique a opção que contenha todas as afirmações verdadeiras. 
 
a) I e III 
b) II e III 
c) III e IV 
d) I e II 
e) II e IV 
 
05. 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? 
 
Singleton 
Abstract Factory 
Proxy 
Prototype 
Nra 
 
 
06. 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? 
 
Abstract Factory 
 
Padrão de Projeto Factory Method 
 
O principal objetivo do padrão factory method está relacionado ao fornecimento de um guia 
para postergação da criação de objetos por parte das classes filhas. 
 
O padrão Factory Method é comumente usado para definirmos um Framework. Desejamos que 
os clientes do Framework decidam a melhor maneira de usá-lo. Este padrão é geralmente utilizado 
quando uma classe não pode antecipar quais os objetos devem ser criados. 
 
As classes filhas de um cliente deverão armazenar o conhecimento sobre a construção do objeto. 
Conseqüências 
 Fornece ganchos para subclasses; 
 Conecta hierarquias de classes paralelas; 
 
Exemplo: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
06.Dentre as alternativas abaixo identifique a que NÃO define uma situação em que deve ser utilizado 
o padrão Factory Method? 
 
Quando o algoritmo de criação de um objeto deve ser independente das suas partes 
constituintes e da maneira como ele é "montado". [Nesta situação, utiliza‐se o Builder] 
 
Quando classes delegam responsabilidade para uma entre várias subclasses de apoio. 
 
Quando se quer localizar num ponto único a conhecimento de qual subclasse está sendo usada. 
 
Quando uma classe quer que suas subclasses especifiquem os objetos criados. 
 
Quando uma classe (o criador) não pode antecipar a classe dos objetos que deve criar. 
 
07. Em relação aos padrões de projeto de software assinale a alternativa correta. 
 
a) Singleton é um padrão utilizado quando se deseja separar a construção de um objeto complexo de sua 
representação de modo que o mesmo processo de construção possa criar diferentes representações. 
b) Builder é um padrão utilizado quando se deseja especificar os tipos de objetos a serem criados usando 
uma instância protótipo e criar novos objetos pela cópia desse protótipo. 
c) Adapter é um padrão utilizado quando se deseja desacoplar uma abstração de sua implementação, de modo 
que as duas possam variar independentemente. 
d) Factory Method é um padrão utilizado quando se deseja definir uma interface para criar um objeto e 
deixar as subclasses decidirem que classe instanciar. 
e) Proxy é um padrão utilizado quando se quer garantir que uma classe tenha somente uma instância e fornecer 
um ponto global de acesso a mesma. 
 
08.Considere: 
 
I. Fornecer uma interface para criação de famílias de objetos relacionados ou dependentes, sem 
especificar suas classes concretas. Possibilitar o adiamento da instanciação para as subclasses. 
II. Garantir a existência de apenas uma instância de uma classe, mantendo um ponto global de acesso 
ao seu objeto. 
III. Possibilitar o armazenamento do estado interno de um objeto em um determinado momento, para 
que seja possível retorná-lo a este estado, caso necessário. 
 
I, II e III são, respectivamente, objetivos dos design patterns intitulados: 
 
a) Interpreter, Iterator e Memento. 
b) Command, Singleton e Iterator. 
c) Factory Method, Singleton e Memento. 
d) Iterator, Factory Method e Flyweight. 
e) Singleton, Flyweight e Command. 
 
09. Os padrões de projeto podem ser vistos como heurísticas que guiam os desenvolvedores de software na 
organização do espaço de objetos de uma aplicação. Os padrões de projeto GoF (GoF patterns) são 
classificados 
em três tipos: de criação, de estrutura e de comportamento. 
 Considerando esses padrões de projeto e a figura acima, julgue os itens de 61 a 63
11.Caso seja verificado no desenvolvimento de um sistema forte acoplamento entre as classes, 
recomenda-se o uso do padrão de comportamento Factory Method, que evita o acoplamento 
do remetente de uma solicitação ao seu receptor, dando a mais de um objeto a oportunidade 
de tratar uma solicitação, mesmo nos casos em que o conjunto de objetos não seja conhecido 
a priori ou seja definido dinamicamente. 
 
Certo Errado 
 
12.No desenvolvimento de um sistema estruturado em subsistemas para facilitar o acesso e 
minimizar a comunicação e dependências entre os subsistemas, o padrão de criação Factory 
Method, que fornece uma interface para acriação de famílias de objetos relacionados ou 
dependentes sem especificar suas classes concretas, é mais indicado que o padrão de criação 
Prototype. 
 
Certo Errado 
 
13. - Considere os padrões que podem ser utilizados em um projeto de software e relacione os 
padrões com suas respectivas intenções primárias. 
 
Padrão 
I - Bridge 
II - Builder 
III - Factory Method 
 
Intenção primária 
(P) Padrão estrutural cuja intenção é converter a interface de uma classe em outra interface, 
esperada pelos clientes, permitindo que classes com interfaces incompatíveis trabalhem em 
conjunto, o que, de outra forma, seria impossível. 
(Q) Padrão estrutural cuja intenção é desacoplar uma abstração da sua implementação, 
de modo que as duas possam variar independentemente. 
(R) Padrão de criação cuja intenção é separar a construção de um objeto complexo da sua 
representação de modo que o mesmo processo de construção possa criar diferentes 
representações. 
(S) Padrão de criação cuja intenção é definir uma interface para criar um objeto, mas 
deixando as subclasses decidirem que classe instanciar. Ele permite adiar a instanciação 
para subclasses. 
 
A relação correta é: 
 
a) I - P , II - Q , III - R 
b) I - P , II - Q , III - S 
c) I - Q , II - R , III - S 
d) I - Q , II - R , III - P 
e) I - Q , II - S , III – P 
 
14.Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro autores, 
os Padrões GoF (Group of Four) estão divididos pelos seguintes famílias de padrões: Padrões de 
Criação ou de Construção, Padrões Estruturais e Padrões Comportamentais. 
 
Considerando os padrões de Criação ou de Construção, analise o modelo abaixo e em seguida 
marque a alternativa que define a representação. 
 
 
Singleton. 
Factory Method. 
Facade. 
Builder 
 
 
 
 
 
 
 
15. 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. 
 
Apenas as sentenças II e III estão corretas 
Todas as sentenças estão corretas 
Apenas as sentenças I e III estão corretas 
Apenas a sentença II está correta 
Apenas as sentenças I e II estão corretas 
 
16. Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro 
autores, os Padrões GoF (Group of Four) estão divididos pelos seguintes famílias de padrões: 
Padrões de Criação ou de Construção, Padrões Estruturais e Padrões Comportamentais. 
 
Considerando os padrões de Criação ou de Construção, analise o modelo abaixo e em 
seguida marque a alternativa que define a representação. 
 
Factory Method. 
Facade. 
Mediator. 
Singleton. 
Builder. 
 
17. Em padrão de projeto existe uma situação onde uma classe chama um método abstrato 
especificado em alguma classe abstrata (ou interface) e a subclasse concreta vai decidir que 
tipo exato de objeto criar e retornar. 
 
Baseado nessa descrição marque a alternativa que aponta o padrão relacionado. 
 
Facade. 
Singleton. 
Factory Method. 
Builder. 
Mediator 
 
 
18. Em padrão de projeto existe uma situação onde uma classe chama um método abstrato 
especificado em alguma classe abstrata (ou interface) e a subclasse concreta vai decidir que tipo 
exato de objeto criar e retornar. 
 
Baseado nessa descrição marque a alternativa que aponta o padrão relacionado. 
 
 
 Factory Method. 
 Singleton. 
 Builder. 
 Mediator 
 Facade 
 
 
19. O Padrão de Projeto que define uma Interface para criar um objeto e também é conhecido como 
"Construtor 
Virtual" chama-se: 
Factory Method 
 
 
20. Um desenvolvedor de sistema computacional programou as seguintes classes abaixo: 
 
CÓDIGO EM JAVA 
 
. Classe Geometria: 
public abstract class Geometria { 
private Figura objeto; 
public abstract void criaObjeto(); 
public Figura getObjeto() {return objeto;} 
} 
. Classe GeoCirculo: 
public class GeoCirculo extends Geometria { 
private final double r; 
public GeoCirculo (double r) {this.r = r;} 
@Override 
public void criaObjeto() { this.objeto = new Circulo(r);} 
} 
. Classe GeoQuadrado: 
public class GeoQuadrado extends Geometria { 
private final double l; 
public GeoQuadrado(double l) {this.l = l;} 
@Override 
public void criaObjeto() {this.objeto = new Quadrado(l);} 
} 
. Classe GeoTriangulo: 
public class GeoTriangulo extends Geometria { 
private final double a, l; 
public GeoTriangulo(double a, double l) { 
this.a = a; 
this.l = l; 
} 
@Override 
public void criaObjeto() {this.objeto = new Triangulo(a, l);} 
} 
. Classe Figure: 
public abstract class Figura { 
public abstract double area(); 
} 
. Classe Circulo: 
public class Circulo extends Figura{ 
private double raio; 
public Circulo (double raio) {this.raio = raio;} 
@Override 
public double area() {return Math.pow(raio,2)*3.14159;} 
public double getRaio() {return raio;} 
public void setRaio(double raio) {this.raio = raio;} 
} 
. Classe Quadrado: 
public class Quadrado extends Figura { 
private double lado; 
public Quadrado(double lado) {this.lado = lado;} 
@Override 
public double area() {return Math.pow(lado, 2);} 
public double getLado() {return lado;} 
public void setLado(double lado) {this.lado = lado;} 
} 
. Classe Quadrado: 
public class Triangulo extends Figura { 
private double altura, largura; 
public Triangulo (double altura, double largura) { 
this.altura = altura; 
this.largura = largura; 
} 
@Override 
public double area() {return (altura*largura)/2;} 
public double getAltura() {return altura;} 
public void setAltura(double altura) {this.altura = altura;} 
public double getLargura() {return largura;} 
public void setLargura(double largura) {this.largura 
= largura;} } 
 
21. Analisando o que foi codificado pelo desenvolvedor podemos averiguar que ele utilizou um 
modelo dos padrões de pro-jeto GoF (Gang of Four) pertencente a categoria dos padrões de criação. 
Baseado nesse contexto, assinale abaixo a úni - ca opção que informa corretamente qual foi o modelo 
dos padrões GoF de criação empregado no desenvolvimento das classes JAVA apresentada 
anteriormente: 
Factory Method (Método de fabricação). 
 
22. O padrão Variações protegidas tem como característica: 
 
É um principio básico para fornecer flexibilidade e proteção contra diversos tipos de variações em um 
projeto orientado a objetos, tais como: variações nos dados, comportamento, hardware, componentes 
de software, sistemas operacionais, entre outros. 
 
23. 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 normalmenteenvolve 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. 
 
sentenças I e III estão corretas 
 
 
24. Apenas as Considere as afirmativas 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. 
 
‐ 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 for 
necessário 
 
25. 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. 
 
BUILDER. 
SINGLETON. 
FACTORY METHOD. 
MEDIATOR. 
PROTOTYPE 
 
 
 
 
 
 
26. 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 
 
a) Command, Iterator, Singleton e Expert. 
b) Controller, Expert, Singleton e Prototype. 
c) Command, Singleton, Controller e Façade. 
d) Prototype, Façade, Iterator e Expert. 
e) Adapter, Façade, Command e Iterator. 
 
27. Em um sistema de software para controlar pedidos para entrega em domicílio, deve haver 
uma funcionalidade que permita que o atendente solicite a repetição de um pedido 
anteriormente feito por um cliente. O gerente do restaurante informou que essa funcionalidade 
aumentaria a agilidade no atendimento aos clientes, visto que muitos deles tendem a fazer 
pedidos similares aos que já fizeram anteriormente. Ao usar essa funcionalidade, o atendente 
do restaurante seleciona um pedido cuja composição corresponde a produtos normalmente 
requisitados pelos clientes e solicita ao sistema a construção de um novo pedido igual ao 
selecionado. Esse novo pedido pode, então, ser alterado pelo atendente se o cliente solicitar a 
adição de novos produtos do cardápio, por exemplo. Portanto, a parte principal dessa 
funcionalidade corresponde a criar uma cópia de um pedido a partir de pedido preexistente. 
Na implementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão de 
projeto do catálogo GoF (Gang of Four), dentre os listados abaixo? 
 
a) Builder. 
b) Factory Method. 
c) Command. 
d) Abstract Factory. 
e) Prototype. 
 
 
28. Com relação aos padrões de projeto, julgue os itens seguintes. 
 
Alguns padrões de criação como o Prototype, o Proxy e o Façade não são adequados 
para a programação orientada a objetos. 
 
Certo Errado 
 
- Julgue os itens que se seguem a respeito dos padrões de desenho e outras técnicas para reúso de 
software. 
 
Uma das vantagens do padrão Prototype é o reúso de memória possível por meio do 
compartilhamento de vários objetos por meio de múltiplas interfaces. 
 
Certo Errado 
 
 
29.Questão (Ref.: 107360) Pontos: 0,5 / 0,5 
 
Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro autores, os 
Padrões GoF (Group of Four) estão divididos pelos seguintes famílias de padrões: Padrões de Criação 
ou de Construção, Padrões Estruturais e Padrões Comportamentais. 
 
Considerando os padrões de Criação ou de Construção, analise o modelo abaixo e em seguida marque 
a alternativa que define a representação. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
BUILDER. 
SINGLETON. 
PROTOTYPE. 
FACTORY METHOD. 
MEDIATOR. 
 
30. 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. 
 
Apenas as sentenças II e III estão corretas 
Todas as sentenças estão corretas 
Apenas as sentenças I e III estão corretas 
Apenas a sentença II está correta 
Apenas as sentenças I e II estão corretas 
 
 
31. Consideram as afirmativa abaixo sobre o padrão protype 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. 
 
As afirmativas I, II, III estão incorretas 
As afirmativas I, III, estão corretas e II errada 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
As afirmativas estão todas corretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 
 
32. Assinale a afirmativa correta sobre o padrão Builder: 
 
Deve-se é separar no construtor da própria classe a lógica para criação de um objeto e 
concentrar a lógica de criação em uma hierarquia de herança. 
Um dos principais objetivos do padrão Builder é separar o algoritmo de criação 
de um objeto complexo tanto da especificação, quanto das partes que o compõem. 
Deve-se é embutir no construtor da própria classe a lógica para criação de um objeto ou 
ainda distribuir a lógica de criação em vários métodos adicionais. 
A legibilidade da solução final, ou seja, para entender como um objeto é criado e sob quais 
condições, fica comprometida 
é uma abordagem que não facilita a criação de objetos com diferentes configurações 
e representações, tornando o código dependente a complexidade das classes 
relacionadas 
 
 
12. Qual dos padrões GOF abaixo é mais indicado quando necessitamos criarobjetos de uma 
determinada classe, os quais só têm alguns poucos estados possíveis e é melhor copiá-los e 
aproveitar o seu estado atual do que criar um novo objeto no estado inicial. 
 
Abstract Factory 
Prototype 
Singleton 
Builder 
Decorator 
 
 
 
24. 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 
 
Command, Singleton, Controller e Façade. 
Adapter, Façade, Command e Iterator. 
Prototype, Façade, Iterator e Expert. 
Controller, Expert, Singleton e Prototype. 
Command, Iterator, Singleton e Expert. 
 
 
 
25. (CESGRANRIO - 2010) Em um sistema de software para controlar pedidos para entrega em 
domicílio, deve haver uma funcionalidade que permita que o atendente solicite a repetição de um 
pedido anteriormente feito por um cliente. O gerente do restaurante informou que essa 
funcionalidade aumentaria a agilidade no atendimento aos clientes, visto que muitos deles tendem 
a fazer pedidos similares aos que já fizeram 
anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja 
composição corresponde a produtos normalmente requisitados pelos clientes e solicita ao sistema a 
construção de um novo pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado pelo 
atendente se o cliente solicitar a adição de novos produtos do cardápio, por exemplo. Portanto, a parte 
principal dessa funcionalidade corresponde a criar uma cópia de um pedido a partir de pedido 
preexistente. 
 
Na implementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão de projeto 
do catálogo GoF (Gang of Four), dentre os listados abaixo? 
 
Prototype. 
Command. 
Abstract Factory. 
Builder. 
 Factory Method 
 
 
Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma determinada 
classe, os quais só têm alguns poucos estados possíveis e é melhor copiá-los e aproveitar o seu estado 
atual do que criar um novo objeto no estado inicial. 
 
Decorator 
Builder 
Singleton 
Abstract Factory 
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. 
 
 
facilidade de instanciar classes em tempo de programação; 
facilidade de copiar classes em tempo de execução 
facilidade de instanciar classes em tempo de execução. 
facilidade de instanciar classes em tempo de geração do SGDB 
facilidade de eliminar classes em tempo de execução; 
 
Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma 
determinada classe, os quais só têm alguns poucos estados possíveis e é melhor copiá-los 
e aproveitar o seu estado atual do que criar um novo objeto no estado inicial. 
 
Builder 
Singleton 
Prototype 
Decorator 
Abstract Factory 
 
(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 
 
 
Command, Singleton, Controller e Façade. 
Adapter, Façade, Command e Iterator. 
Command, Iterator, Singleton e Expert. 
Controller, Expert, Singleton e Prototype. 
Prototype, Façade, Iterator e Expert. 
 
 
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. 
 
BUILDER. 
 
FACTORY METHOD. 
 
SINGLETON. 
 
MEDIATOR. 
PROTOTYPE. 
 
 
Consideram as afirmativa abaixo sobre o padrão protype 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. 
 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
As afirmativas I, III, estão corretas e II errada 
As afirmativas I, II, III estão incorretas 
As afirmativas estão todas corretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 
Padrão de Projeto Prototype 
 
O objetivo do padrão Prototype é estabelecer uma maneira de produzir cópias fiéis de objetos. 
O Prototype deve ser independente de como os produtos são criados , compostos e 
representados. É também utilizado quando as classes a instanciar forem especificadas em tempo 
de execução. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Conseqüências 
 
- Adiciona e remove produtos em tempo de execução; 
 
- Especifica novos objetos pela variação de valores; 
 
- Difícil implementação do clone(). 
 
 
Em um sistema de software para controlar pedidos para entrega em domicílio, deve haver uma 
funcionalidade que permita que o atendente solicite a repetição de um pedido anteriormente feito por 
um cliente. O gerente do restaurante informou que essa funcionalidade aumentaria a agilidade no 
atendimento aos clientes, visto que muitos deles tendem a fazer pedidos similares aos que já fizeram 
anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja 
composição corresponde a produtos nor-malmente requisitados pelos clientes e solicita ao sistema a 
construção de um novo pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado pelo 
atendente se o cliente solicitar a adição de novos produtos do cardápio, por exemplo. Portanto, a parte 
principal dessa funcionalidade corresponde a criar uma cópia de um pedido a partir de pedi-do 
preexistente. Naimplementação dessa funcionalidade, seu desenvolvedor deve utilizar qual padrão 
de projeto do ca-tálogo GoF (Gang of Four), dentre os listados abaixo? 
Prototype 
 
Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma 
determinada classe, os quais só têm alguns poucos estados possíveis e é melhor copiá-los e aproveitar 
o seu estado atual do que criar um novo objeto no estado inicial. 
Prototype 
 
Em um sistema de software para controlar pedidos para entrega em domicílio, deve haver uma 
funcionalidade que permita que o atendente solicite a repetição de um pedido anteriormente feito por 
um cliente. O gerente do restaurante informou que essa funcionalidade aumentaria a agilidade no 
atendimento aos clientes, visto que muitos deles tendem a fazer pedidos similares aos que já fizeram 
anteriormente. Ao usar essa funcionalidade, o atendente do restaurante seleciona um pedido cuja 
composição corresponde a produtos normalmente requisitados pelos clientes e solicita ao sis - tema 
a construção de um novo pedido igual ao selecionado. Esse novo pedido pode, então, ser alterado 
pelo atendente se o cliente solicitar a adição de novos produtos do cardápio, por exemplo. Portanto, 
a parte principal dessa funcionali - dade corresponde a criar uma cópia de um pedido a partir de pedido 
preexistente. Na implementação dessa funcionali-dade, seu desenvolvedor deve utilizar qual padrão 
de projeto do catálogo GoF (Gang of Four), dentre os listados abai - xo? 
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. 
facilidade de instanciar classes em tempo de execução. 
 
Qual dos padrões GOF abaixo é mais indicado quando necessitamos criar objetos de uma determinada 
classe, os quais só têm alguns poucos estados possíveis e é melhor copiá-los e aproveitar o seu estado 
atual do que criar um novo objeto no estado inicial. 
 
Prototype 
 
 
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: 
Prototype, Façade, Iterator e Expert 
63 - 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. 
JJ. 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. 
Apenas as sentenças I e III estão corretas 
 
Q: 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 
 
[Atenção para o modificador static que está escrito errado porém a proposição é considerada 
correta!] 
 
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 criados e evitar acesso público; 
 
 
Sobre o padrão de projeto Singleton, 
 
I ‐ o número 1 no canto superior da classe pode ser utilizado opcionalmente para indicar que 
esta classe terá apenas uma única instância. 
 
II ‐ para se implementar o padrão Singleton na classe acima, esta deverá possuir um 
método construtor ServicesFactory() privado. 
 
III ‐ caso uma subclasse estenda a classe ServicesFactory através de herança, o método 
getInstance() deverá ser sobrescrito (override) para construir a subclasse. [Não pois não se 
sobrescreve método estático] 
 
IV ‐ o método getInstance() deverá ser obrigatoriamente declarado como um método 
estático (static). 
 
 
O padrão de projeto singleton é usado para restringir 
 
a) a instanciação de uma classe para objetos simples. 
b) a instanciação de uma classe para apenas um objeto. 
c) a quantidade de classes 
d) as relações entre classes e objetos. 
classes de atributos complexos 
Considerando a figura abaixo, que apresenta um diagrama de relacionamento entre os padrões de 
projeto descritos no livro GoF Book, julgue os próximos itens acerca dos conceitos de programação 
orientada a objetos e padrões de projetos orientados a objetos.
I A implementação de padrões de projeto criacionais em linguagens como C#, Delphi e Java 
sempre envolverá a alocação de memória para a criação de objetos. 
II A implementação de montadores de árvores sintáticas apóia-se mais no uso do padrão 
Singleton que no uso do padrão Composite. 
III A implementação de tratadores de eventos de interface gráfica apóia-se mais no uso do 
padrão Observer que no uso do padrão Visitor. 
IV A implementação de famílias portáveis de componentes de interface gráfica depende 
mais do emprego do padrão Chain of Responsibility que do padrão AbstractFactory. 
V O padrão TemplateMethod é mais simples que o padrão Memento. 
 
Estão certos apenas os itens 
a) I, II e IV. 
b) I, III e V. 
c) I, IV e V. 
d) II, III e IV. 
e) II, III e V. 
 
- Em relação aos padrões de projeto de software assinale a alternativa correta. 
 
a) Singleton é um padrão utilizado quando se deseja separar a construção de um objeto complexo 
de sua representação de modo que o mesmo processo de construção possa criar diferentes 
representações. 
b) Builder é um padrão utilizado quando se deseja especificar os tipos de objetos a serem criados 
usando uma instância protótipo e criar novos objetos pela cópia desse protótipo. 
c) Adapter é um padrão utilizado quando se deseja desacoplar uma abstração de sua 
implementação, de modo que as duas possam variar independentemente. 
d) Factory Method é um padrão utilizado quando se deseja definir uma interface para criar 
um objeto e deixar as subclasses decidirem que classe instanciar. 
e) Proxy é um padrão utilizado quando se quer garantir que uma classe tenha somente uma 
instância e fornecer um ponto global de acesso a mesma. 
 
- Na UML, o padrão Singleton (GoF) pode ser visto como na classe abaixo: 
 
 
 
 
 
 
 
 
 
 
 
 
Sobre o padrão de projeto Singleton, assinale a alternativa INCORRETA: 
 
a) onúmero 1 no canto superior da classe pode ser utilizado opcionalmente para indicar que 
esta classe terá apenas uma única instância. 
b) para se implementar o padrão Singleton na classe acima, esta deverá possuir um método 
construtor ServicesFactory() privado. 
c) caso uma subclasse estenda a classe ServicesFactory através de herança, o método 
getInstance() deverá ser sobrescrito (override) para construir a subclasse. 
d) o método getInstance() deverá ser obrigatoriamente declarado como um método estático 
(static). 
 
 
Considere: 
 
I. Fornecer uma interface para criação de famílias de objetos relacionados ou 
dependentes, sem especificar suas classes concretas. Possibilitar o adiamento da 
instanciação para as subclasses. 
JJ. Garantir a existência de apenas uma instância de uma classe, mantendo um 
ponto global de acesso ao seu objeto. 
III. Possibilitar o armazenamento do estado interno de um objeto em um determinado 
momento, para que seja possível retorná-lo a este estado, caso necessário. 
 
I, II e III são, respectivamente, objetivos dos design patterns intitulados: 
 
f) Interpreter, Iterator e Memento. 
g) Command, Singleton e Iterator. 
h) Factory Method, Singleton e Memento. 
i) Iterator, Factory Method e Flyweight. 
j) Singleton, Flyweight e Command. 
 
- Em relação a padrões de projeto de software, assinale a afirmativa incorreta 
 
a) Builder é um padrão utilizado quando se deseja separar a construção de um objeto 
complexo de sua representação de modo que o mesmo processo de construção possa criar 
diferentes representações. 
b) Factory Method é um padrão utilizado quando se deseja definir uma interface para 
criar um objeto e deixar as subclasses decidirem que classe instanciar. 
c) Adapter é um padrão utilizado quando se deseja converter a interface de uma classe em 
outra interface, esperada pelos clientes. 
 
 
 
 
 
 
 
 
 
 
d) Singleton é um padrão utilizado quando se deseja compor objetos em estrutura de 
árvore para representarem hierarquias partes-todo. 
e) Proxy é um padrão também conhecido como surrogate utilizado quando se deseja fornecer um 
substituto ou marcador da localização de outro objeto para controlar o acesso ao mesmo. 
 
Acerca desses padrões, avalie: 
 
I. Em termos de padrões de criação de projetos, algumas classes, tais como um spooler de 
impressão ou um sistema de arquivos, devem ser instanciadas uma única vez e prover um 
ponto de acesso global a esta instância. 
II. Pertencente ao grupo de padrões estruturais, é utilizado para permitir que dois objetos 
se comuniquem mesmo que tenham interfaces incompatíveis. 
III. Encapsula uma requisição como um objeto, permitindo que os clientes parametrizem 
diferentes requisições e filas, ou façam o registro de log de requisições e dêem suporte a 
operações que podem ser desfeitas. 
IV. Atribuir a responsabilidade do tratamento de um evento do sistema a uma classe 
que representa o próprio sistema ou à classe que representa um caso de uso. 
 
As proposições correspondem, respectivamente, aos padrões: 
 
a) Singleton, Adapter, Command e Controller. 
b) Command, Iterator, Singleton e Expert. 
c) Façade, Iterator, Expert e Adapter. 
d) Controller, Expert, Singleton e Prototype. 
e) Adapter, Façade, Command e Iterator. 
O padrão de projeto orientado a objetos denominado singleton exprime o fenômeno 
recorrente na análise que é a existência de muitas aplicações nas quais há um objeto 
que é a única instância de sua classe. 
 
Certo Errado 
 
O Singleton é um padrão que garante que uma classe tenha apenas uma instância. 
 
Certo Errado 
 
O padrão singleton permite que uma classe Java tenha apenas uma instância e fornece 
múltiplos pontos de acesso à classe. 
 
Certo Errado 
 
8. (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? 
 
Visitor. 
Singleton. 
Bridge. 
Memento. 
Iterator. 
 
 
 
10. 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 criados e evitar acesso público; 
 
As afirmativas I, III, estão corretas e II errada 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
As afirmativas I, II, III estão incorretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
As afirmativas estão todas corretas 
 
 
57. 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 
criados e evitar acesso público; 
 
As afirmativas estão todas corretas 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
As afirmativas I, II, III estão incorretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
As afirmativas I, III, estão corretas e II errada 
 
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. 
 
 
Singleton 
Builder; 
Composite; 
Decorator; 
Prototipe: 
 
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 criados e evitar acesso público; 
 
 
 
 
As afirmativas I, II, III estão incorretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 
As afirmativas I, III, estão corretas e II errada 
 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
 
As afirmativas estão todas corretas 
 
 
Considerando que o padrão tem o objetivo de garantir que existe apenas uma instancia de uma 
certa classe a qualquer instante e em qualquer ponto de um sistema. Indique o padrão mencionado 
e cite uma vantagem de sua utilização. 
 
 
 
 
 
Resposta: 
 
 
 
 
Gabarito: padrão singleton uma vantagem apontada é o desempenho de uma aplicação. 
 
 
Padrão deProjeto Singleton 
 
O conceito por trás do padrão de projeto Singleton reside na necessidade de se garantir a penas 
uma única instância de uma classe. Ou seja, não permitir mais de um objeto. 
 
A solução reside em tornar a classe responsável por manter esta unicidade. 
 
Singleton 
 
Static instance() 
 
Exemplo: 
 
 
 
 
 
 
 
 
- Consequências: 
 
* Acesso controlado a instância única. 
 
* Espaço de nomes reduzidos. 
 
* Variantes para controle de vários 
objetivos. Padrão de Projeto Adapter 
 
A intenção de iso do padrão de projeto Adapter reside na compatibilidade de uso de 
frameworks e bibliotecas com interfaces à priori conflitantes ou mesmo imutáveis para 
determinados clientes. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
- Consequências: 
 
* Permite o Adapter substituir algum comportamento de adaptee 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
- 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? 
Singleton 
 
 
 
 
53 - São responsabilidades do GRASP? 
Falso - Tratar instanciamento único (Singleton) 
Verdadeiro - Baixo acoplamento das classes 
Verdadeiro - Tratar o polimorfismo 
Verdadeiro - Alta coesão das classes 
Falso - Tratar a estrutura parte-todo (Composite)

Continue navegando