flyweight

1104 palavras 5 páginas
Flyweight novembro 13, 2011
Mão na massa: Flyweight
Problema:
No desenvolvimento de jogos são utilizadas várias imagens. Elas representam as entidades que compõe o jogo, por exemplo, cenários, jogadores, inimigos, entre outros. Ao criar classes que representam estas entidades, é necessário vincular a elas um conjunto de imagens, que representam as animações.
Quem desenvolve jogos pode ter pensado na duplicação de informação quando as imagens são criadas pelos objetos que representam estas entidades, por exemplo, a classe que representa um inimigo carrega suas imagens. Quando são exibidos vários inimigos do mesmo tipo na tela, o mesmo conjunto de imagens é criado repetidamente.
A solução para esta situação de duplicação de informações pelos objetos é a utilização do padrão Flyweight.
Flyweight
A intenção do padrão:
“Usar compartilhamento para suportar eficientemente grandes quantidades de objetos de granularidade fina.” [1]
Pela intenção percebemos que o padrão Flyweight cria uma estrutura de compartilhamento de objetos pequenos. Para o exemplo citado, o padrão será utilizado no compartilhamento de imagens entre as entidades.
Antes de exemplificar vamos entende um pouco sobre a estrutura do padrão. A classe Flyweight fornece uma interface com uma operação que deve ser realizado sobre um estado interno. No exemplo esta classe irá fornecer uma operação para desenhar a imagem em um determinado ponto. Desta forma a imagem é o estado intrínseco, que consiste de uma informação que não depende de um contexto externo. O ponto passado como parâmetro é o estado extrínseco, que varia de acordo com o contexto.
Vamos então ao código da imagem e do ponto:
1
2
3
4
5
6
7
8
9
10
11
public class Imagem { protected String nomeDaImagem; public Imagem(String imagem) { nomeDaImagem = imagem; } public void desenharImagem() { System.out.println(nomeDaImagem + " desenhada!"); }
}
Para simplificar o exemplo, será

Relacionados

  • Flyweight e DEcorator
    571 palavras | 3 páginas
  • Flyweight, prototype e builder
    737 palavras | 3 páginas
  • Padrões de projeto - flyweight e prototype
    1345 palavras | 6 páginas
  • Tccc
    5131 palavras | 21 páginas
  • Padrões de Projetos
    5705 palavras | 23 páginas
  • 2 Avaliando o Aprendizado
    257 palavras | 2 páginas
  • Pradr Es De Projetos Atividade 2
    1060 palavras | 5 páginas
  • Itil e cobit
    2759 palavras | 12 páginas
  • ABSTRACT FACTORY
    109485 palavras | 438 páginas
  • padroes trab1 2 Paulo Weverton
    1871 palavras | 8 páginas