Você está na página 1de 11

Padrões de Projeto

State

Aluno: Leonardo Henrique Lima de Souza;

Data da apresentação: 12-04-2023;

1
Nome e Classificação

Padrão de projeto: State;


Tipo: Comportamento/Comportamental
de Objetos;
Também conhecido como:
Objects for States.

2
Intenção e Objetivo

Permitir um objeto alterar seu comportamento


quando o seu estado interno muda. O objeto
parecerá ter mudado sua classe.

3
Aplicação

• Quando o comportamento de um objeto


depende do seu estado e ele pode mudar seu
comportamento em tempo de execução,
dependendo desse estado;
• Quando operações têm comandos
condicionais grandes, de várias alternativas,
que dependem do estado do objeto.
4
Consequências

1. Ele confina comportamento específico de


estados e particiona o comportamento
para estados diferentes.
2. Ele torna explícitas as transições de
estado.
3. Objetos State podem ser compartilhados.

5
Estrutura

6
Exemplo de Contexto

1. Player de Música;
2. Controlador de Personagem(Jogo);
3. IA de um Inimigo(Jogo);
4. Pedido de Compra;
5. Máquina de Venda Automática;
6. Controle de Acesso.

7
Padrão Semelhante
Padrão de Projeto State:
1. Permite que um objeto mude seu
comportamento internamente quando seu
estado interno muda.

Padrão de Projeto Strategy:


1. Permite que um objeto tenha um
comportamento intercambiável, que pode ser
selecionado ou trocado em tempo de execução
8
Padrão Semelhante

Padrão de Projeto State:


2. É baseado na ideia de que um objeto pode ter
diferentes estados e que seu comportamento
pode variar de acordo com o estado atual em
que se encontra.

9
Padrão Semelhante

Padrão de Projeto Strategy:


2. Diferentes algoritmos podem ser encapsulados
em classes separadas e intercambiáveis, e que
um objeto pode selecionar um algoritmo
específico para executar em tempo de
execução.

10
Referências

GAMMA, Erich; HELM, Richard; JOHNSON,


Ralph; VLISSIDES, John. Padrões de
Projeto: Soluções Reutilizáveis de
Software Orientado a Objetos. 1ª ed.
Porto Alegre: Bookman, 2000.

11

Você também pode gostar