Buscar

PADRÕES DE PROJETO DE SOFTWARE

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 22 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 22 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 22 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ÕES DE PROJETO DE SOFTWARE 
 
AULA 1 
 
1. Um design pattern descreve uma solução geral comprovada e reutilizável para um problema recorrente no 
desenvolvimento de sistemas de software orientados a objetos. Padrões de projeto ajudam a reconhecer e implementar 
boas soluções para problemas comuns. Dois dos principais design patterns utilizados atualmente são descritos a 
seguir: I. Visa garantir que uma classe só tenha uma única instância e prover um ponto de acesso global a ela. II. Visa 
definir uma dependência um-para-muitos entre objetos para que quando um objeto mudar de estado os seus 
dependentes sejam notificados e atualizados automaticamente. Os design patterns descritos em I e II são, 
respectivamente: 
 
Facade e Adapter. 
Singleton e Command. 
Singleton e Observer. 
Composite e Adapter 
Facade e Observer. 
 
2. 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 
 
Business Object 
MVC 
DAO 
DTO 
Application Service 
 
3. Segundo a classificação de Design Patterns apresentada pela GoF, identifique com V os padrões comportamentais e 
com F, os demais. 
 
(V) Observer. 
(F) Iterator. 
(F) Façade. 
(V) Composite. 
(F) Visitor. 
 
A alternativa que contém a sequência correta, de cima para baixo, é a 
 
F V V V F 
F F V V V 
V F F V F 
V V V V V 
V V F F V 
 
4. Podemos afirmar que os Padrões de Criação da família GoF: 
 
Definem caminhos comuns para a organização de diferentes tipos de objetos, facilitando sua integração e colaboração 
mútua. 
Subutilizam as rotinas de tratamento de erros, em virtude da depuração de código fonte na fase de levantamento das 
necessidades junto aos usuários. 
Fornecem um guia de como instanciar objetos, que normalmente envolve decisões dinâmicas para escolher, por 
exemplo, qual classe instanciar ou a quais objetos delegar responsabilidade. 
Colocam em dúvida o tratamento dispensado aos usuários na fase de levantamento das necessidades. 
São projetados para organizar, gerenciar e combinar diferentes comportamentos. 
 
5. Especificar os tipos de objetos a serem criados usando uma instância como protótipo e criar novos objetos ao copier 
este protótipo. Para qual padrão de projeto a afirmação se relaciona? 
 
Abstract Factory 
Memento 
Observer 
Adapter 
Nra 
 
6. A família de padrões GoF é dividida em três grupos principais de padrões, a saber: 
 
Padrões de Proxy; Padrões de Criação; Padrões de Encadeamento 
Padrões de Criação; Padrões Metodológicos; Padrões de Ponte 
Padrões de Processo; Padrões de Singularidade; Padrões de Prototipação 
Padrões Comportamentais; Padrões de Criação; Padrões Estruturais 
Padrões Estruturais; Padrões de Processo; Padrões de Responsabilidade 
 
AULA 2 
Uma solução natural, apresentada por muitos desenvolvedores, é 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. Um dos principais objetivos 
do padrão Builder é evitar este tipo de estratégia, seu propósito é separar o algoritmo de criação de um objeto 
complexo tanto da especificação, quanto das partes que o compõem. Esta abordagem facilita a criação de objetos com 
diferentes configurações e representações, facilita a manutenção do código, reduz a complexidade das classes 
relacionadas (a complexidade de criação é atribuída ao Builder) e melhora a legibilidade da solução final, ou seja, para 
entender como um objeto é criado e sob quais condições, deve-se avaliar a classe Builder responsável por esta ação. 
1. 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, II, estão corretas e a afirmativa III está errada. 
As afirmativas estão todas corretas 
As afirmativas I, III, estão corretas e II errada 
As afirmativas I, II, III estão incorretas 
 
2. (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? 
 
Iterator. 
Bridge. 
Memento. 
Visitor. 
Singleton. 
 
3. (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? 
 
Builder. 
Factory Method. 
Command. 
Abstract Factory. 
Prototype. 
 
4. 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. 
MEDIATOR. 
SINGLETON. 
PROTOTYPE. 
FACTORY METHOD. 
 
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. 
 
 
SINGLETON. 
BUILDER. 
FACTORY METHOD. 
MEDIATOR. 
FACADE. 
 
6. ¿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 apartir dessa classe. 
 
Escolha uma das alternativas abaixo que preenche corretamente a lacuna apresentada na descrição acima. 
 
Factory Method 
Abstract Factory 
Facade 
Builder 
Singleton 
 
AULA 3 
 
1. Marque a alternativa que melhor descreve uma situação típica onde poderia ser utilizado o padrão de projeto 
Adapter? 
 
Um programador precisa de uma classe que possua um método para retornar a única instância existente da classe. 
Um programador precisar utilizar uma classe que possui interface diferente da classe existente na aplicação. 
Um programador precisa utilizar uma classe que possui a mesma interface da classe existente na aplicação. 
Um programador precisa ser avisado quando houver alterações no estado de um objeto. 
Um programador precisa de um método que simplifique o acesso a uma hierarquia de classes. 
 
2. Assinale a alternativa correspondente ao padrão de projeto utilizado para adicionar responsabilidades dinâmicas a 
objetos. 
 
Decorator 
Adapter 
Bridge 
Composite 
Façade 
 
3. (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. 
 
Singleton, Composite e Interpreter. 
Proxy, Builder e Mediator. 
Mediator, Interpreter e Command. 
Composite, Decorato e Proxy. 
Prototype, Abstract Factory e Builder. 
 
4. Programadores se deparam muitas vezes com a situação onde é preciso acrescentar responsabilidades a objetos e 
não a classe. Uma das opções é utilizar herança, entretanto, esta alternativa é estática. Outra alternativa é especificar 
uma nova classe para implementar cada responsabilidade que se deseja atribuir dinamicamente a um dado objeto. Esta 
nova classe se chama _____________________________. 
 
Composite; 
Associativa; 
Adapter; 
Decorator; 
Beidge; 
 
5. Qual padrão estrutural permite que um objeto utilize serviços de outros objetos com interfaces diferentes por meio 
de uma interface única: 
 
 
 
Composite 
Bridge 
Facade 
Flyweight 
Adapter 
 
6. (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. 
 
O Bridge estabelece uma ponte entre uma abstração e suas possíveis implementações. 
Ambos promovem a flexibilidade ao fornecer um nível de endereçamento indireto para outro objeto. 
O Adapter é inferior ao Bridge porque não evita a replicação de código. 
Ambos são padrões estruturais que possuem alguns atributos em comum. 
O foco do Adapter é a solução de incompatibilidades entre duas interfaces existentes. 
 
AULA 4 
 
1. 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 _____________________________________________________________ 
 
hipóteses ou asserções sobre fora do contexto no qual o objeto opera. 
hipóteses ou asserções sobre o contexto no qual o objeto opera. 
comparações ou associações sobre o contexto no qual o objeto opera. 
Acoplamento fraco entre o subsistema e seus clientes. 
hipóteses ou exclusões sobre o contexto no qual o objeto opera. 
 
2. 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. 
 
Incentivar acoplamento fraco entre o subsistema e seus clientes. 
Incentivar acoplamento forte entre o subsistema e seus clientes. 
Simplificar o acesso a determinadas funcionalidades de um subsistema, sem inviabilizar sua utilização direta. 
Ajudar a melhorar portabilidade dos sistemas. 
Tornar os clientes independentes da complexidade dos diferentes subsistemas de uma aplicação. 
 
3. Que padrão estrutural usa compartilhamento para suportar um grande número de pequenos objetos de forma 
eficiente. 
 
 
Decorator 
Flyweight 
Bridge 
Facade 
Composite 
 
4. 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. 
 
Acoplamento 
Flyweight 
Coesão 
Proxy 
Façade 
 
5. A utilização do padrão estrutural de projeto cuja 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: 
 
Composite. 
Façade; 
Proxy; 
Flyweight 
Decorator; 
 
6. 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? 
 
Memento 
Singleton 
Proxy 
Observer 
Nra 
 
 
 
 
AULA 5 
 
1. 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. 
 
Interpreter; 
Proxy; 
Flyweight 
Chain of Responsability, 
Template Method 
 
2. Aponte dentre as opções colocadas aquela que corresponde a estrutura do padrão que sugere que a modelagem do 
problema seja realizada através de uma gramática recursiva.. 
 
Interpreter; 
Iterator 
Template Method; 
Chain of Responsability, 
Mediator 
 
3. (CESGRANRIO - 2008) 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 
 
Strategy. 
Template Method. 
Decorator. 
Singleton. 
Abstract Factory. 
 
4. 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. 
 
Concretas;Generalizada; 
Com método púbico; 
Baixa coesão. 
Alto acoplamento; 
 
 
5. (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 
 
Expert. 
Creator. 
Observer. 
Layers. 
Model-View-Controller. 
 
 
6. Entre as vantagens do padrão Interpreter podem-se citar: 
 
I - facilidade para mudar e estender a gramática, pois, o padrão utiliza classes para representar as regras gramaticais. 
 
II - Pode-se usar herança para mudar ou estender a gramática, assim como expressões existentes podem ser 
modificadas incrementalmente e novas expressões podem ser criadas a partir das existentes; 
 
III - a implementação da gramática é mais fácil, pois, classes que definem os nós folhas da árvore tem implementações 
similares. Por outro lado, uma das desvantagens é que o padrão Interpreter define, ao menos, uma classe para cada 
regra da gramática, logo, gramáticas com muitas regras são difíceis de manter e administrar. 
 
As afirmativas estão todas corretas 
As afirmativas I, II, III estão incorretas 
As afirmativas I, III, estão corretas e II errada 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
 
AULA 6 
 
1. (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. 
 
Singleton, Composite e Interpreter. 
Composite, Decorato e Proxy. 
Mediator, Interpreter e Command. 
Proxy, Builder e Mediator. 
Prototype, Abstract Factory e Builder. 
 
2. 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. 
 
Utilizar uma classe associativa para o fim desejado. 
um construtor público para este fim. 
um construtor privado para este fim. 
Uma classe com método publico para este fim; 
Utilizar um outro padrão comportamental que complemente o objetivo. 
 
3. O problema de acessar elementos de coleções, matrizes ou estruturas de dados encadeados é bastante recorrente em 
programação. Assinale dentre as alternativas abaixo, aquela que oferece uma forma de percorrer este tipo de objeto 
agregado, sem conhecer seus detalhes de implementação. 
 
Padrão Mediator; 
Padrão Iterator; 
Padrão Proxy; 
Padrão Memento; 
Padrão Visitor; 
 
4. 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. 
 
Padrão Proxy; 
Command; 
Padrão Memento 
Padrão Interator; 
Padrão Mediator; 
 
5. Qual o padrão comportamental utilizado baseando-se no diagrama de classe abaixo: 
 
 
 
State 
Mediator 
Command 
Iterator 
Observer 
 
6. Sobre o padrão Command: 
 
I - É ideal para acessar elementos de coleções, matrizes ou estruturas de dados encadeados 
II - A vantagem desta abordagem é que o objeto que está realizando a chamada do método não precisa saber nada 
sobre seu funcionamento. 
III - Este padrão de projeto oferece uma maior flexibilidade na arquitetura do sistema, uma vez que permite a adição 
de novas funcionalidades (comandos) sem a necessidade de mudar a arquitetura. 
 
podemos afirmar: 
 
As afirmativas I, II, estão corretas e a afirmativa III está errada 
As afirmativas I, II, III estão incorretas 
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 e IV estão corretas. 
 
AULA 7 
 
1. Considere a definição: O padrão Strategy define uma família de algoritmos , encapsula cada um deles , e torna-os 
intercambiáveis, permitindo assim que os algoritmos variem independentemente dos clientes que os utilizam (Gamma 
et al., 2000). Qual das alternativas é completamente verdadeira? 
 
A ideia principal do padrão acima é implementar diferentes algoritmos em uma hierarquia de classes, onde cada um 
deles pode ser substituído por outro, independente do cliente que o utiliza. 
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. 
O padrão de projeto acima 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. 
O padrão de projeto acima é indicado para ser utilizado quando uma abstração tem dois aspectos, um dependente do 
outro. Encapsular tais aspectos em objetos separados permite que variem e sejam reusados separadamente; 
O principal objetivo do padrão acima é conservar as funcionalidades em não se permita adicionar novas, E obriga que 
haja necessidade de alterar sua implementação 
 
2. 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. 
 
Observer 
State 
Visitor 
Strategy 
Memento 
 
3. Identifique dentre as opções abaixo, aquela que representa o padrão de projeto comportamental, cuja ideia principal 
é implementar diferentes algoritmos em uma hierarquia de classes, onde cada um deles pode ser substituído pelo 
outro, independente do cliente que o utiliza . 
 
Strategy 
Decorator; 
Proxi; 
Visitor; 
State; 
 
4. Dentre as opções apresentadas, assinale aquela que corresponde ao padrão de projeto cuja ideia principal é 
implementar diferentes algoritmos, em uma hierarquia de classes, onde cada um deles pode ser substituído por outro, 
independente do cliente que o utiliza. 
 
Proxy; 
Strategy; 
Visitor; 
Memento; 
Command; 
 
5. 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: 
 
Interpreter; 
Visitor ; 
Proxy; 
State; 
Strategy; 
 
6. 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. . 
 
Agregações; 
Padrão bridge; 
Padrão visitor; 
Atributos valorados; 
Condicionais grandes; 
 
AULA 8 
 
1. Uma das categorias que tradicionalmente se classificam os padrõesde projeto: Padrões de criação cujo objetivo é:
 
Define formas de instanciar objetos delegando responsabilidades 
Define como implantar o mecanismo de herança em um grupo de objetos 
Define a forma de organização dos objetos e sua colaboração mutua 
Define formas de gerencia e combinar diferentes comportamentos. 
Define como implantar um novo método em uma classe. 
 
2. Os 9 padrões definidos pela General Responsability Assignment Software Pattener são? 
 
1. Creator; 2.High Coesion; 3.Low Coupling; 4.Controller; 5.Polymorphis; 6.Information Expert; 7.Pure Fabrication; 
8.Indirection; e 9.Facade. 
1. Creator; 2.High Coesion; 3.Low Coupling; 4.Controller; 5.Polymorphis; 6.Information Expert; 7.Pure Fabrication; 
8.Indirection; e 9.Variation. 
1. Creator; 2.Decoretor; 3.FlyWeight; 4.Controller; 5.Polymorphis; 6.Information Expert; 7.Pure Fabrication; 
8.Indirection; e 9.Variation. 
1. Singleton; 2.High Coesion; 3.Low Coupling; 4.Controller; 5.Polymorphis; 6.Information Expert; 7.Pure 
Fabrication; 8.Indirection; e 9.Variation. 
1. Creator; 2.High Coesion; 3.Low Coupling; 4.Buider; 5.Bridge; 6.Information Expert; 7.Pure Fabrication; 
8.Indirection; e 9.Variation. 
 
 
3. Considere as classes e métodos abaixo: E escolha a opção correta sobre a gravura: E escolha a opção correta sobre a 
gravura: 
 
 
 
sobre o acoplamento e coesão : 
 
Existem acoplamentos das classes que foram gerados de forma desnecessária pois poderiam ser incorporados em um 
único método e isto iria facilitar a manutenção e o entendimento. 
Existem acoplamentos que poderiam ser evitados, considerando apenas o diagrama, assim o método de imprimir nota 
fiscal, dando-se o código de cliente, pode ser mapeado de forma diferente melhorando-se o acoplamento. 
O método void imp_NF (cod) poderia ser implementado na classe NF sem envolver mais nenhuma classe. Não tendo 
outros médotos o acoplamento não existiria o que é o desejável. 
método void imp_NF (cod) não deve ser implementado na classe NF. Obteria-se um projeto melhor se NF fosse 
acoplada a classe Cliente seus métodos incorporados na classe cliente. Pode-se garantir um melhor acoplamento 
Existem acoplamentos das classes cliente e Nota fiscal. E Nota fiscal e Item de Nota fiscal. Esta forma de acoplamento 
é caracterizado por chamada de métodos. 
 
4. (FUMARC - 2011) São padrões de projeto GoF (design patterns), EXCETO: 
 
Strategy. 
Visitor. 
Criador. 
Adapter. 
Facade. 
 
5. Pode-se sucintamente definir o padrão Variation do GRASP como: 
 
Criar classes controladoras. 
Criar classe que resolva problemas de inconsistência, criando adaptações para saná-las. 
Criar classes altamente coesas. 
Criar camadas para melhor organizar a aplicação. 
Criar classes que permitam sobrecarga e sobreescrita. 
 
6. Dado o diagrama de sequência especifique o padrão GRASP utilizado: 
 
 
 
 
Facade 
Proxy 
Decorator 
Information Expert 
Flyweight 
 
AULA 9 
 
1. Coesão implica que um componente ou classe encapsule somente os atributos e operações muito relacionadas a si e 
com a classe do componente ou classe propriamente dito. Os tipos de coesão podem ser: 
 
I - Funcional: ocorre quando um módulo executa um e somente um cálculo, e então retorna o resultado; 
II - Em camada: ocorre quando uma camada de mais alto nível tem acesso a serviços de camadas mais baixas, mas 
camadas mais baixas, não tem acesso a camadas mais altas. 
III - Comunicacional: todas as operações que tem acesso aos mesmos dados são definidas dentro de uma classe. 
IV - Interclasse: Todas as operações devem ser definidas envolvendo outras classes para garantir a coesão. 
 
As afirmativas totalmente corretas são 
 
As afirmativas II,III,IV estão corretas e a afirmativa I está errada. 
As afirmativas I,II,III estão corretas e a afirmativa IV está errada. 
As afirmativas I,III,IV estão corretas e a afirmativa II está errada. 
s afirmativas I,II,III e IV estão corretas. 
As afirmativas I,II,IV estão corretas e a afirmativa III está errada. 
 
2. Um padrão controlador é o primeiro objeto além da camada de interface com o usuário que é responsável por 
receber ou tratar uma mensagem de operação do sistema, Este é um padrão de projeto de delegação, pois, 
normalmente um controlador deve delegar a outros objetos o serviço que precisa ser feito. Dentre os conceitos abaixo, 
assinale aquele que complementa o objetivo deste padrão. 
 
ele coordena ou controla as classes; 
ele coordena ou controla a atividade; 
ele coordena ou controla as generalizações; 
ele controla ou coordena os métodos; 
ele coordena ou controla a recursividade; 
 
3. Considere a figura abaixo 
 
 
 
E escolha a opção correta sobre a gravura: 
 
A classe instanciada assinalada como: ???? Permite desacoplar as classes e métodos de apresentação. E isto aumenta a 
reutilização das classes de negocio. 
A Classe instanciada assinalada como: ???? Deveria estar incorporada na classe emprestar para evitar criar uma serie 
de novas classes. Isto facilita o projeto. 
A Classe instanciada assinalada como: ???? Não pode ser decomposta em outros controladores. Assim temos que 
trabalhar com o tipo de coesão resultante (temporal, funcional...) 
uma classe de controle exige que sempre se tem há uma classe de apresentação. Desta forma não podemos ter mais de 
uma classe de controle por sistema 
A Classe instanciada assinala como:???? É de baixo acoplamento e baixa coesão pela natureza de sua criação. 
 
4. (CESPE - 2010 - INMETRO) A coesão e o acoplamento são formas de se avaliar se a segmentação de um sistema 
em módulos ou em componentes foi eficiente. 
 
Acerca da aplicação desses princípios, assinale a opção correta. 
 
A modularização do programa em partes especializadas pode aumentar a qualidade desses componentes, mas pode 
prejudicar o seu reaproveitamento em outros programas. 
Um benefício da alta coesão é permitir realizar a manutenção em um módulo sem se preocupar com os detalhes 
internos dos demais módulos. 
Os componentes ou os módulos devem ser fortemente coesos e fracamente acoplados. 
Os componentes ou os módulos devem apresentar baixa coesão e um alto grau de acoplamento. 
O baixo acoplamento pode melhorar a manutebilidade dos sistemas, pois ele está associado à criação de módulos 
como se fossem caixas-pretas. 
 
5. Marque a alternativa que está relacionada ao padrão GRASP responsável manter os objetos focados, com 
funcionalidades específicas, inteligíveis e gerenciáveis? 
 
Coesão alta 
Criador 
Controlador 
Especialista da informação 
Baixo acoplamento 
 
 
6. Marque a alternativa que está relacionada ao padrão GRASP que está relacionada com a seguinte questão: como 
tratar alternativas com base no tipo? 
 
Observador 
Especialista da informação 
State 
Acoplamento fraco 
Polimorfismo 
 
AULA 10 
 
1. O objetivo do padrão de projeto Indireção é atribuir responsabilidade a um objeto intermediário para servir como 
mediador entre outros componentes ou serviços, com o objetivo de? 
 
impedir que que eles não sejam diretamente acoplados; 
impedir que que eles sejam parcialmente acoplados 
impedir que que eles não sejam diretamente excluídos; 
impedir que que eles sejam indiretamente acoplados; 
permitir que que eles sejam diretamente acoplados; 
 
2. Dentre as opções abaixo assinale aquela que não se constitui em uns benefícios da aplicação do padrão variações 
protegida. 
 
o impacto ou custo das modificações pode ser diminuído. 
novas implementações são introduzidas sem afetar o cliente, 
as extensões para novas variações são fáceis de adicionar, 
oacoplamento fica mais baixo; 
as extensões para novas variações são difíceis de adicionar, 
 
3. Dentre as opções abaixo, assinale aquela que sugere onde uma aplicação do padrão de projeto Invenção Pura deve 
criar uma nova classe específica para salvar objetos. 
 
em em um banco de dados relacional. 
em um banco de dados ordenado; 
em um banco de dados integrado; 
em em um banco de dados hierárquico; 
em um banco de dados homogêneo; 
 
4. Marque dentre as opções apresentadas àquela que corresponde ao padrão de projeto que sugere atribuir um conjunto 
de responsabilidades altamente coesas a uma classe artificial, ou de conveniência, que não represente o domínio do 
problema, algo inventado, para apoiar coesão alta, acoplamento baixo e reuso. 
 
Criador 
Invenção pura; 
Indireção; 
Variações protegidas; 
Proxy; 
 
5. O padrão Invenção Pura tem como característica: 
 
É o primeiro objeto além da camada de interface com o usuário que é responsável por receber ou tratar uma 
mensagem de operação do sistema. [Controller] 
 
É 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. [Variações protegidas] 
 
Implica que um componente ou classe encapsule somente os atributos e operações muito relacionadas a si e com a 
classe do componente ou classe propriamente dito. [Expert] 
Sugere atribuir um conjunto de responsabilidades altamente coesa a uma classe artificial ou de conveniência que não 
represente o domínio do problema, algo inventado, para apoiar coesão alta, acoplamento baixo e reuso. 
 
O objetivo é atribuir responsabilidade a um objeto intermediário para servir como mediador entre outros componentes 
ou serviços, para que eles não sejam diretamente acoplados. [Indireção] 
 
6. O padrão de projeto variações protegidas é um princípio básico para fornecer _____________e _____________ 
flexibilidade e proteção contra diversos tipos de variações em um projeto orientado a objetos, Complete as lacunas 
com a opção correta. 
 
flexibilidade, proteção e visibilidade. 
proteção e visibilidade; 
flexibilidade e acoplamento; 
proteção e coesão; 
flexibilidade e proteção; 
 
SIMULADO 1A 
 
1. Especificar os tipos de objetos a serem criados usando uma instância como protótipo e criar novos objetos ao copier 
este protótipo. Para qual padrão de projeto a afirmação se relaciona? 
 
Abstract Factory 
Nra 
Memento 
Adapter 
Observer 
 
2. “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 
Singleton 
Prototype 
Proxy 
Nra 
 
3. São padrões criacionais GoF: 
 
Singleton 
Polymorphis 
Builder 
Prototype 
Facade 
 
4. 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. 
 
 
FACADE. 
SINGLETON. 
MEDIATOR. 
BUILDER. 
FACTORY METHOD. 
 
5. Um compositor musical deseja criar uma hierarquia de classes para representar a estrutura das suas notas musicais. 
Em primeiro lugar, definiu uma classe abstrata chamada Melodia, a seguir, criou duas classes derivadas, uma chamada 
Nota e outra chamada Partitura. Cada Nota musical representa o elemento mínimo de uma Melodia e cada Partitura é 
formada por uma ou mais notas. Marque a alternativa que representa o melhor padrão de projeto para modelar este 
problema. 
 
Adapter 
Façade 
Proxy 
Composite 
Bridge 
 
6. Programadores se deparam muitas vezes com a situação onde é preciso acrescentar responsabilidades a objetos e 
não a classe. Uma das opções é utilizar herança, entretanto, esta alternativa é estática. Outra alternativa é especificar 
uma nova classe para implementar cada responsabilidade que se deseja atribuir dinamicamente a um dado objeto. Esta 
nova classe se chama _____________________________. 
 
Decorator; 
Composite; 
Associativa; 
Adapter; 
Beidge; 
 
7. 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: 
As afirmativas II, III ,IVestão corretas e a afirmativa I está errada. 
As afirmativas I, III, IVestão corretas e II errada. 
As afirmativas I, II, III e IV estão corretas. 
As afirmativas I, II, III estão erradas e IV correta. 
As afirmativas I, II, IV estão corretas e a afirmativa III está errada. 
 
8. (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 
 
Flyweight. 
Observer. 
Prototype. 
Decorator. 
Façade. 
 
9. Dentre as opções colocadas abaixo, assinale aquela que corresponde ao padrão de projeto que requer para sua 
implementação, que cada objeto receptor de uma determinada solicitação tenha uma lógica para descrever os tipos de 
solicitação que é capaz de processar e como passar adiante aquelas que requeiram processamento por outros 
receptores. 
 
Iterator; 
classe Handler; 
Template Method; 
Mediator; 
Chain of Responsability ; 
 
10. 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: 
 
Template Method 
Builder 
Flyweight 
State 
Command 
 
SIMULADO 1B 
 
1. Se em uma classe tem-se um comportamento que cria outros comportamentos dependendo dos parâmetros a ele 
passados temos o padrão GoF Criacional? 
 
Builder 
Singleton 
Factory Method 
Prototype 
Abstract Factory 
 
2. 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 
 
DAO 
MVC 
DTO 
Application Service 
Business Object 
 
3. 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 geração do SGDB 
facilidade de instanciar classes em tempo de execução. 
facilidade de instanciar classes em tempo de programação; 
facilidade de eliminar classes em tempo de execução; 
facilidade de copiar classes em tempo de execução. 
 
4. Conhecido como padrões da gangue dos quatro, por terem sido desenvolvidos por quatro autores, os Padrões GoF 
(Group ofFour) 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. 
 
 
 
MEDIATOR. 
PROTOTYPE. 
FACTORY METHOD. 
BUILDER. 
SINGLETON. 
 
5. Qual padrão estrutural permite que um objeto utilize serviços de outros objetos com interfaces diferentes por meio 
de uma interface única: 
 
 
 
 
Flyweight 
Composite 
Bridge 
Adapter 
Facade 
 
6. Assinale a alternativa correspondente ao padrão de projeto utilizado para adicionar responsabilidades dinâmicas a 
objetos. 
Decorator 
Adapter 
Façade 
Bridge 
Composite 
 
7. 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: 
 
Façade; 
Decorator 
Composite; 
Proxy; 
Flyweight 
 
8. 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. 
 
Prototype, Façade, Iterator e Expert. 
Adapter, Façade, Command e Iterator. 
Command, Iterator, Singleton e Expert. 
Command, Singleton, Controller e Façade. 
Controller, Expert, Singleton e Prototype. 
 
9. 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. 
 
Proxy; 
Interpreter; 
Chain of Responsability, 
Template Method 
Flyweight 
 
10. Aponte dentre as opções colocadas aquela que corresponde a estrutura do padrão que sugere que a modelagem do 
problema seja realizada através de uma gramática recursiva.. 
 
Template Method; 
Iterator 
Interpreter; 
Chain of Responsability, 
Mediator 
 
SIMULADO 1C 
 
1. O projeto Orientado a objetos pressupõe a criação de modelos de domínio a partir dos requisitos identificados para 
entendimento do negócio e apresentação de uma solução. A esses modelos são acrescidas os aspectos físicos, como os 
métodos e a troca de mensagens entre eles. A questão é decidir a melhor forma de interação entre os métodos, ou seja, 
a atribuição da responsabilidade estabelecida para que se possa gerar um melhor resultado. 
 
Visando facilitar a construção de soluções são apresentados os padrões de projeto. Assinale dentre as alternativas a 
seguir a que NÃO define uma característica atribuída ao uso dos padrões. 
 
São definidos por especialistas de problemas e servem para aplicação direta em qualquer contexto. 
Fornece orientação de aplicação em circunstâncias variáveis. 
O nome do padrão é utilizado para agrupar ideias em um conceito. 
É uma descrição nomeada de um problema e solução que pode ser aplicado em novos contextos. 
É apresentado através de uma descrição contendo informações de identificação e registro, como: Nome, Problema, 
Sumário, Solução, Conseqüências e Padrões Relacionados. 
 
2. Considerando a classe de projetos GoF assinalem a opção cujos padrões de projeto estão todos classificados como 
Comportamentais 
 
Command,- bridge, - Iterator, - Mediator, bridge, State, Strategy 
Command,- Interpreter, - Iterator, - Mediator, - composite , State, Strategy 
Command,- bridge, - Iterator, - Mediator, - composite - State, Strategy 
Command,- Interpreter, - Iterator, - Mediator, - Observer, State, Strategy 
Command,- bridge, - Iterator, - Mediator, - Observer, State, Strategy 
 
3. Considere as afirmativa abaixo sobre o padrão Builder: 
 
I ) É utilizado na instanciação de objetos complexos. 
 
II)É visto como um construtor especializado, que irá executar e avaliar diferentes regras de negócio e demais 
particularidades relacionadas com a criação de um novo objeto. 
 
III) A ideia é atribuir a responsabilidade de criação do objeto complexo a outra classe, esta classe irá armazenar todas 
as configurações e regras necessárias para a instanciação do novo objeto. 
 
As afirmativas II, III estão corretas e a afirmativa I está errada. 
As afirmativas estão todas corretas 
As afirmativas I, III, estão corretas e II errada 
As afirmativas I, II, III estão incorretas 
As afirmativas I, II, estão corretas e a afirmativa III está errada. 
 
4. Assinale a afirmativa correta sobre o padrão Builder: 
 
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. 
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. 
é 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 
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. 
A legibilidade da solução final, ou seja, para entender como um objeto é criado e sob quais condições, fica 
comprometida 
 
5. Que padrão estrutural anexa dinamicamente responsabilidades adicionais a um objeto. Provê uma alternativa 
flexível ao uso de herança como mecanismo de extensão de funcionalidade: 
 
 
 
Bridge 
Composite 
Decorator 
Facade 
Adapter 
 
6. Dado o diagrama de classe identifique o padrão GoF estrutual 
 
 
 
 
Decorator 
Flyweight 
Adapter 
Bridge 
Composite 
 
7. Considerando a classe de projetos GoF assinale a opção cujos padrões de projeto estão todos classificados como 
Estruturais: 
 
singleton; bridge ; composite; decorator ; faça de ; flyweight;¿ Proxy 
adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; singleton 
singleton; bridge ; protype; decorator ; faça de ; flyweight ; Proxy 
adapter ; bridge ; protype ¿ decorator ; faça de ; flyweight ; singleton 
adapter ; bridge ; composite ; decorator ; faça de ; flyweight ; Proxy 
 
8. (FCC - 2011) No contexto dos padrões de projeto: 
 
I. Oferecer uma interface simples para uma coleção declasses. 
 
II. Desacoplar uma abstração de sua implementação para que ambas possam variar independentemente. 
 
Correspondem respectivamente a 
 
Façade e Composite. 
Composite e Bridge. 
Bridge e Adapter. 
Façade e Bridge. 
Adapter e Façade. 
 
9. (CESGRANRIO - 2008) 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 
 
Decorator. 
Template Method. 
Strategy. 
Abstract Factory. 
Singleton. 
 
10. 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. 
 
concretas; 
baixa coesão. 
alto acoplamento; 
Generalizada; 
com método púbico;

Continue navegando