Flyweigh

Páginas: 2 (432 palabras) Publicado: 27 de enero de 2013
El patrón Flyweight (u objeto ligero) sirve para eliminar o reducir la redundancia cuando tenemos gran cantidad de objetos que contienen información idéntica, además de lograr un equilibrio entreflexibilidad y rendimiento (uso de recursos).
Problema que soluciona
Necesitamos representar gráficamente muchas pelotas idénticas que rebotan en los bordes de una ventana, así que creamos una claseque tenga por atributos las coordenadas, el radio y el color con que se dibujará la pelota.
Problema: Aunque las coordenadas son distintas, como queremos que nuestras pelotas sean iguales, el radio yel color se repetirán en cada instancia, desperdiciando mem
Implementación
Crear una clase PelotaFlyweight, que contendrá la información común (radio y color) y otra clase PelotaConcreta, quecontendrá las coordenadas concretas de cada pelota y una referencia a un objeto de tipo PelotaFlyweight.
Al crearse instancias de PelotaConcreta, se les deberá proveer de referencias a la instancia dePelotaFlyweight adecuada a nuestras necesidades.
En este caso solamente tendríamos una instancia de PelotaFlyweight, puesto que hemos dicho que todas nuestras pelotas tienen el mismo radio y color, peropensando en un ejemplo en el que tuviéramos varios grupos de pelotas, y dentro de cada uno de los cuales se compartieran el radio y el color, se puede utilizar Flyweight conjuntamente con el patrónFactory, de tal modo que este último, en el momento en que se le soliciten instancias de PelotaConcreta con determinadas características (mismo radio y color que el solicitado), compruebe si ya existeunPelotaFlyweight con ese radio y color, y devuelva esa referencia o, en caso de que no exista, la cree y la registre. El patrón Factory se encargaría de gestionar los PelotaFlyweight existentes.[editar]Pasos para aplicar el patrón
1. Asegúrese que el rendimiento en los objetos es un tema primordial, y si el cliente esta dispuesto a asumir el reajuste
2. Divida el objetivo principal en...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS