SlideShare uma empresa Scribd logo
1 de 41
Padrões de projetos para jogos 
● Alunos : Robson Cavalcante de Negreiros 
Lucas Sales Vieira 
● Prof° responsável : Camilo Camilo Almendra
O que é um padrão de projeto 
● É uma solução geral reutilizável para um problema que 
ocorre com frequência dentro de um determinado contexto 
no projeto de software.
Categorias segundo (GoF) 
● Padrões de criação:relacionado a instanciação de 
objetos. 
● Padrões de estrutura: tratam das ações entre classe e 
objetos, como são construídos para formar estruturas 
maiores. 
● Padrões de comportamento: tratam das interações e 
divisões entre classes e objetos, ou seja, dos algoritmos e 
atribuições de responsabilidades entre objetos com foco 
na comunicação entre os mesmos.
Alguns dos padrões mais utilizados em 
jogos 
● Builder 
● State 
● Command 
● Memento 
● Mediator 
● Observer
Padrão Builder 
● 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.
Diagrama Classe : Builder
● Builder : 
É a Interface Abstrata para a criação das partes de um objeto. 
● ConcreteBuilder : 
Constroe e monta as partes do objeto pela implementação da 
interface Builder. 
Fornece a interface para recuperar o produto. 
● Director : 
Constroe o objeto de acordo com Builder que recebeu. 
● Product : 
Representa o objeto complexo em construção
Exemplo código
Exemplo código
Exemplo código
Desvantagens do Padrão Builder 
● Um problema com o padrão é que é preciso sempre 
chamar o método de construção para depois utilizar o 
produto em si.
Padrão State 
● Ele permite um objeto alterar seu comportamento quando 
o seu estado interno muda. Esta mudança é significativa e 
visível para o usuário, assemelhando-se a troca de classe.
Quando Usar o padrão State 
● O comportamento de um objeto depende do seu estado e 
ele deve mudar o seu comportamento em tempo de 
execução dependendo do estado. 
● Os métodos têm grandes instruções condicionais em que 
as condições dependem do estado do objeto.
Aplicabilidade : State 
● Quando uma classe desempenha vários comportamentos 
● Quando classes relacionadas forem diferentes apenas no 
comportamento
Vantagens : State 
● Faz as mudanças de estado explícitas. 
● Os objetos Estado podem ser compartilhados se eles não 
contêm variáveis d e instância. 
● Permite a um objeto alterar de classe em tempo de 
execução dado que ao modificar suas responsabilidades 
pela de outro objeto de outra classe, a herança e 
responsabilidades do primeiro mudaram pelas do 
segundo.
Exemplo código
Exemplo código
Exemplo código
Desvantagem : State 
● Aumenta o número de subclasses
Padrão Command 
● O padrão de projeto (Design Pattern) Command é um 
padrão comportamental cuja intenção é encapsular uma 
solicitação como um objeto e desta forma permitir que 
você parametrize clientes com diferentes solicitações, 
enfileire ou registre(log) solicitações e suporte operações 
que podem ser desfeitas.(GoF)
Diagrama Classe: Command
Command 
● Comando: É a classe abstrata ou interface para a executar 
a operação, ela é a base para todo objeto Comando. 
● ComandoConcreto: Implementa a operação executar() e 
possui a relação com o Receptor para executar a ação 
usando o mesmo a ela vinculado. 
● Client : Cria o ComandoConcreto e atribui a vinculação 
com o seu Receptor correspondente. 
● Receptor : Conhece como executar as operações 
associadas com a execução do comando.
Aplicabilidade Command 
● Queremos parametrizar objetos por uma ação a ser 
executada; 
● Queremos especificar, enfileirar e executar solicitações 
em tempos diferentes; 
● Queremos dar suporte para desfazer operações; 
● Estruturar um sistema em torno de operações de alto 
nível, como transações por exemplo; 
● Reduzir acoplamento entre as requisições dos clientes 
e o objetos que as executam; 
● Para facilitar a implantação de novas operações e 
tornar mais simples a manutenção das operações.
Vantagens Command 
● O padrão Command desacopla o objeto que invoca a 
operação daquele que sabe como executá-la; 
● O padrão Command reduz o acoplamento 
(dependência) entre o objeto que chama a operação e o 
objeto que executa a operação; 
● Um comando pode ser composto por outros comandos; 
● É fácil acrescentar novos Commands porque não é 
preciso mudar as classes existentes;
Padrão Memento 
● Captura o estado de um objeto em um determinado 
momento, de maneira que este possa voltar a esse estado 
mais tarde. Sem violar o encapsulamento.
Aplicabilidade : Memento 
● Na implementação de ações de “voltar , desfazer” 
● Para o armazenamento de estados a serem restaurados 
de um objeto. 
● Para a captura de estados de objetos que são encobertos 
por encapsulamento.
Diagrama de Classe
Memento 
● Care Taker : Cuida do gerenciamento dos mementos. 
● Memento : É a classe que representa a memoria do 
estado do objeto. 
● Originator : É o objeto que terá seu estado armazenado.
Diagrama de sequência
Padrão Mediator 
● É um padrão comportamental utilizado para gerenciar a 
comunicação entre dois ou mais objetos.
Por que utilizá-lo? 
● O Mediator promove o acoplamento fraco ao evitar que os 
objetos se refiram uns aos outros explicitamente
Diagrama Classe : Mediator
Diagrama Sequencia : Mediator
Vantagens Padrão Mediator 
● Uma vantagem interessante, é a possibilidade de mudar o 
comportamento do mediator. É possível extendê-lo e 
trocar seu funcionamento, sem ter que alterar nenhuma 
das outras classes existentes.
Padrão Observer 
Define uma dependência uma para muitos entre objetos, de 
maneira que quando em objeto muda de estado todos os 
seus dependentes são notificados e atualizados 
automaticamente
Como garantir que os objetos 
perceba a mudança 
● Os observadores devem conhecer o objeto de que os 
interessam 
● O objeto de interesse deve notificar os observadores 
quando for mudado
Aplicabilidade : Observer 
● Quando uma mudança a um objeto requer mudanças a 
outros e você não sabe quantos outros objetos devem 
mudar ou quando um objeto deve ser capaz de avisar 
outros sem fazer suposições sobre quem são os 
objetos(ou seja não cria alto aclopamento)
Diagrama Classe : Observer
Observer 
● Observable : Tem uma interface para adicionar e remover 
observadores, ele conhece vários observadores e possui 
um método para modicar. 
● ConcreteObservable : Mantém o estado dos 
Observadores. 
● Observer : Define uma interface de atualização. 
● ConcreteObserver : Mantém referência ou recebe 
referência para o objeto em observação.
Diagrama Sequencia : Observer
Referências 
● https://brizeno.wordpress.com/category/padroes-de-projeto/builder/ 
● https://brizeno.wordpress.com/category/padroes-de-projeto/command/ 
● https://brizeno.wordpress.com/category/padroes-de-projeto/state/ 
● http://abrindoojogo.com.br/category/tecnico/projeto-de-software/Contatos : 
robsoncavalcante.es@gmail.com 
lucasalesvieira2@gmail.com

Mais conteúdo relacionado

Mais procurados

Uml diagrama de sequencia
Uml diagrama de sequenciaUml diagrama de sequencia
Uml diagrama de sequencia
Italo Costa
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
Nécio de Lima Veras
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
elliando dias
 

Mais procurados (20)

Diagrama sequencia
Diagrama sequenciaDiagrama sequencia
Diagrama sequencia
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
BD I - Aula 08 B - Algebra Relacional - Exercicios Resolucao
BD I - Aula 08 B - Algebra Relacional - Exercicios ResolucaoBD I - Aula 08 B - Algebra Relacional - Exercicios Resolucao
BD I - Aula 08 B - Algebra Relacional - Exercicios Resolucao
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Trabalho uml
Trabalho umlTrabalho uml
Trabalho uml
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Structs em C
Structs em CStructs em C
Structs em C
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Uml diagrama de sequencia
Uml diagrama de sequenciaUml diagrama de sequencia
Uml diagrama de sequencia
 
O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?
 
Aula 1 - Revisão UML
Aula 1 - Revisão UMLAula 1 - Revisão UML
Aula 1 - Revisão UML
 
Jogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de ClasseJogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de Classe
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Criação de tabelas com HTML
Criação de tabelas com HTMLCriação de tabelas com HTML
Criação de tabelas com HTML
 

Destaque

Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)
Nécio de Lima Veras
 
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Renato Leal
 
Universidade federal de alagoas ufal
Universidade federal de alagoas ufalUniversidade federal de alagoas ufal
Universidade federal de alagoas ufal
Samária Maria
 
Arquitetura da plataforma com o Biztalk Server
Arquitetura da plataforma com o Biztalk ServerArquitetura da plataforma com o Biztalk Server
Arquitetura da plataforma com o Biztalk Server
Markus Christen
 
Publisher subscriber pattern
Publisher subscriber patternPublisher subscriber pattern
Publisher subscriber pattern
DaeMyung Kang
 

Destaque (20)

Aula 04 - UML e Padrões de Projeto
Aula 04 - UML e Padrões de ProjetoAula 04 - UML e Padrões de Projeto
Aula 04 - UML e Padrões de Projeto
 
Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)
 
Strategy - Padrões de Projeto
Strategy - Padrões de ProjetoStrategy - Padrões de Projeto
Strategy - Padrões de Projeto
 
Games, lado dev
Games, lado devGames, lado dev
Games, lado dev
 
Padrões de Projeto (GoF)
Padrões de Projeto (GoF)Padrões de Projeto (GoF)
Padrões de Projeto (GoF)
 
Engenharia de Software Educacional
Engenharia de Software EducacionalEngenharia de Software Educacional
Engenharia de Software Educacional
 
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
 
Universidade federal de alagoas ufal
Universidade federal de alagoas ufalUniversidade federal de alagoas ufal
Universidade federal de alagoas ufal
 
Softwares educacionais
Softwares educacionaisSoftwares educacionais
Softwares educacionais
 
Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)
 
Engenharia de software aplicada ao software educacional: desafios, problemas ...
Engenharia de software aplicada ao software educacional: desafios, problemas ...Engenharia de software aplicada ao software educacional: desafios, problemas ...
Engenharia de software aplicada ao software educacional: desafios, problemas ...
 
Aplicação de Padrões de Projeto para a melhoria da manutenabilidade de software
Aplicação de Padrões de Projeto para a melhoria da manutenabilidade de softwareAplicação de Padrões de Projeto para a melhoria da manutenabilidade de software
Aplicação de Padrões de Projeto para a melhoria da manutenabilidade de software
 
Publish-Subscribe Middlewares
Publish-Subscribe MiddlewaresPublish-Subscribe Middlewares
Publish-Subscribe Middlewares
 
Padrões de Projeto - Observer
Padrões de Projeto - ObserverPadrões de Projeto - Observer
Padrões de Projeto - Observer
 
Ciclo de vida de software
Ciclo de vida de software Ciclo de vida de software
Ciclo de vida de software
 
Padrão de Projeto Observer
Padrão de Projeto ObserverPadrão de Projeto Observer
Padrão de Projeto Observer
 
Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2Desenvolvimento de Jogos - Mercado Parte 2
Desenvolvimento de Jogos - Mercado Parte 2
 
Arquitetura da plataforma com o Biztalk Server
Arquitetura da plataforma com o Biztalk ServerArquitetura da plataforma com o Biztalk Server
Arquitetura da plataforma com o Biztalk Server
 
Publisher subscriber pattern
Publisher subscriber patternPublisher subscriber pattern
Publisher subscriber pattern
 
Publish & Subscribe to events using an Event Aggregator
Publish & Subscribe to events using an Event AggregatorPublish & Subscribe to events using an Event Aggregator
Publish & Subscribe to events using an Event Aggregator
 

Semelhante a Padrões de Projeto para Jogos

Arquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhrArquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhr
Thiago Boufleuhr
 
Aulas de análise
Aulas de análiseAulas de análise
Aulas de análise
Frank Lira
 
Aulas de análise
Aulas de análiseAulas de análise
Aulas de análise
Frank Lira
 
Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
Carlos Melo
 
Orientação a objetos da teoria a prática em java
Orientação a objetos   da teoria a prática em java Orientação a objetos   da teoria a prática em java
Orientação a objetos da teoria a prática em java
Fabiano Lima
 

Semelhante a Padrões de Projeto para Jogos (20)

Padrões de projetos
Padrões de projetosPadrões de projetos
Padrões de projetos
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Workshop React Hooks
Workshop React HooksWorkshop React Hooks
Workshop React Hooks
 
Liferay Kaleo Workflow com atribuição por categorias
Liferay Kaleo Workflow com atribuição por categoriasLiferay Kaleo Workflow com atribuição por categorias
Liferay Kaleo Workflow com atribuição por categorias
 
React Hooks
React HooksReact Hooks
React Hooks
 
Hooks em React: o novo jeito de fazer componentes funcionais
Hooks em React: o novo jeito de fazer componentes funcionaisHooks em React: o novo jeito de fazer componentes funcionais
Hooks em React: o novo jeito de fazer componentes funcionais
 
Angular 2
Angular 2Angular 2
Angular 2
 
Começando com React.js
Começando com React.jsComeçando com React.js
Começando com React.js
 
BlingTech - Padrões de Projeto
BlingTech - Padrões de ProjetoBlingTech - Padrões de Projeto
BlingTech - Padrões de Projeto
 
Padrões de design orientado a objetos
Padrões de design orientado a objetosPadrões de design orientado a objetos
Padrões de design orientado a objetos
 
Arquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhrArquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhr
 
Quick reference
Quick referenceQuick reference
Quick reference
 
Aulas de análise
Aulas de análiseAulas de análise
Aulas de análise
 
Aulas de análise
Aulas de análiseAulas de análise
Aulas de análise
 
Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
 
Orientação a objetos da teoria a prática em java
Orientação a objetos   da teoria a prática em java Orientação a objetos   da teoria a prática em java
Orientação a objetos da teoria a prática em java
 
342336684-GSI030-Aula08-projetoImplementacao.pdf
342336684-GSI030-Aula08-projetoImplementacao.pdf342336684-GSI030-Aula08-projetoImplementacao.pdf
342336684-GSI030-Aula08-projetoImplementacao.pdf
 
Introdução da uml e diagramas parte1
Introdução da uml e diagramas parte1Introdução da uml e diagramas parte1
Introdução da uml e diagramas parte1
 
Travalho versao final
Travalho versao finalTravalho versao final
Travalho versao final
 

Padrões de Projeto para Jogos

  • 1. Padrões de projetos para jogos ● Alunos : Robson Cavalcante de Negreiros Lucas Sales Vieira ● Prof° responsável : Camilo Camilo Almendra
  • 2. O que é um padrão de projeto ● É uma solução geral reutilizável para um problema que ocorre com frequência dentro de um determinado contexto no projeto de software.
  • 3. Categorias segundo (GoF) ● Padrões de criação:relacionado a instanciação de objetos. ● Padrões de estrutura: tratam das ações entre classe e objetos, como são construídos para formar estruturas maiores. ● Padrões de comportamento: tratam das interações e divisões entre classes e objetos, ou seja, dos algoritmos e atribuições de responsabilidades entre objetos com foco na comunicação entre os mesmos.
  • 4. Alguns dos padrões mais utilizados em jogos ● Builder ● State ● Command ● Memento ● Mediator ● Observer
  • 5. Padrão Builder ● 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.
  • 7. ● Builder : É a Interface Abstrata para a criação das partes de um objeto. ● ConcreteBuilder : Constroe e monta as partes do objeto pela implementação da interface Builder. Fornece a interface para recuperar o produto. ● Director : Constroe o objeto de acordo com Builder que recebeu. ● Product : Representa o objeto complexo em construção
  • 11. Desvantagens do Padrão Builder ● Um problema com o padrão é que é preciso sempre chamar o método de construção para depois utilizar o produto em si.
  • 12. Padrão State ● Ele permite um objeto alterar seu comportamento quando o seu estado interno muda. Esta mudança é significativa e visível para o usuário, assemelhando-se a troca de classe.
  • 13. Quando Usar o padrão State ● O comportamento de um objeto depende do seu estado e ele deve mudar o seu comportamento em tempo de execução dependendo do estado. ● Os métodos têm grandes instruções condicionais em que as condições dependem do estado do objeto.
  • 14. Aplicabilidade : State ● Quando uma classe desempenha vários comportamentos ● Quando classes relacionadas forem diferentes apenas no comportamento
  • 15. Vantagens : State ● Faz as mudanças de estado explícitas. ● Os objetos Estado podem ser compartilhados se eles não contêm variáveis d e instância. ● Permite a um objeto alterar de classe em tempo de execução dado que ao modificar suas responsabilidades pela de outro objeto de outra classe, a herança e responsabilidades do primeiro mudaram pelas do segundo.
  • 19. Desvantagem : State ● Aumenta o número de subclasses
  • 20. Padrão Command ● O padrão de projeto (Design Pattern) Command é um padrão comportamental cuja intenção é encapsular uma solicitação como um objeto e desta forma permitir que você parametrize clientes com diferentes solicitações, enfileire ou registre(log) solicitações e suporte operações que podem ser desfeitas.(GoF)
  • 22. Command ● Comando: É a classe abstrata ou interface para a executar a operação, ela é a base para todo objeto Comando. ● ComandoConcreto: Implementa a operação executar() e possui a relação com o Receptor para executar a ação usando o mesmo a ela vinculado. ● Client : Cria o ComandoConcreto e atribui a vinculação com o seu Receptor correspondente. ● Receptor : Conhece como executar as operações associadas com a execução do comando.
  • 23. Aplicabilidade Command ● Queremos parametrizar objetos por uma ação a ser executada; ● Queremos especificar, enfileirar e executar solicitações em tempos diferentes; ● Queremos dar suporte para desfazer operações; ● Estruturar um sistema em torno de operações de alto nível, como transações por exemplo; ● Reduzir acoplamento entre as requisições dos clientes e o objetos que as executam; ● Para facilitar a implantação de novas operações e tornar mais simples a manutenção das operações.
  • 24. Vantagens Command ● O padrão Command desacopla o objeto que invoca a operação daquele que sabe como executá-la; ● O padrão Command reduz o acoplamento (dependência) entre o objeto que chama a operação e o objeto que executa a operação; ● Um comando pode ser composto por outros comandos; ● É fácil acrescentar novos Commands porque não é preciso mudar as classes existentes;
  • 25. Padrão Memento ● Captura o estado de um objeto em um determinado momento, de maneira que este possa voltar a esse estado mais tarde. Sem violar o encapsulamento.
  • 26. Aplicabilidade : Memento ● Na implementação de ações de “voltar , desfazer” ● Para o armazenamento de estados a serem restaurados de um objeto. ● Para a captura de estados de objetos que são encobertos por encapsulamento.
  • 28. Memento ● Care Taker : Cuida do gerenciamento dos mementos. ● Memento : É a classe que representa a memoria do estado do objeto. ● Originator : É o objeto que terá seu estado armazenado.
  • 30. Padrão Mediator ● É um padrão comportamental utilizado para gerenciar a comunicação entre dois ou mais objetos.
  • 31. Por que utilizá-lo? ● O Mediator promove o acoplamento fraco ao evitar que os objetos se refiram uns aos outros explicitamente
  • 32. Diagrama Classe : Mediator
  • 34. Vantagens Padrão Mediator ● Uma vantagem interessante, é a possibilidade de mudar o comportamento do mediator. É possível extendê-lo e trocar seu funcionamento, sem ter que alterar nenhuma das outras classes existentes.
  • 35. Padrão Observer Define uma dependência uma para muitos entre objetos, de maneira que quando em objeto muda de estado todos os seus dependentes são notificados e atualizados automaticamente
  • 36. Como garantir que os objetos perceba a mudança ● Os observadores devem conhecer o objeto de que os interessam ● O objeto de interesse deve notificar os observadores quando for mudado
  • 37. Aplicabilidade : Observer ● Quando uma mudança a um objeto requer mudanças a outros e você não sabe quantos outros objetos devem mudar ou quando um objeto deve ser capaz de avisar outros sem fazer suposições sobre quem são os objetos(ou seja não cria alto aclopamento)
  • 38. Diagrama Classe : Observer
  • 39. Observer ● Observable : Tem uma interface para adicionar e remover observadores, ele conhece vários observadores e possui um método para modicar. ● ConcreteObservable : Mantém o estado dos Observadores. ● Observer : Define uma interface de atualização. ● ConcreteObserver : Mantém referência ou recebe referência para o objeto em observação.
  • 41. Referências ● https://brizeno.wordpress.com/category/padroes-de-projeto/builder/ ● https://brizeno.wordpress.com/category/padroes-de-projeto/command/ ● https://brizeno.wordpress.com/category/padroes-de-projeto/state/ ● http://abrindoojogo.com.br/category/tecnico/projeto-de-software/Contatos : robsoncavalcante.es@gmail.com lucasalesvieira2@gmail.com