Ver Mensaje Individual
  #1  
Antiguo 21-12-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 27
Delphius Va camino a la fama
Patron GoF: Factoría ¿Como y cuando se usa?

Buenas tardes y/o noches a todos.

Refilosofando sobre el uso de una factoría... me he estado haciendo unas preguntas... Preguntas que muy posiblemente a más de uno le sienta mal al estómago... Si amigos... otra vez yo con mis oscuros pensamientos y reflexiones que ni yo me logro entender.

Me hice una pregunta, a modo de práctica y de estudio sobre el patrón factoria:
Cita:
¿Se podrá hacer una Factoria base como para contar con algún método que sea UTIL a cualquier factoría?
La idea que anda rondando en mi cabeza es heredar de esta clase e incorporar los métodos necesarios para la factoría en particular.

Otra idea, surgida del ejemplo que hace tiempo me propuso Román, es si sería posible hacer que esta clase base disponga de algún método RegistrarClase() de forma que se consiga mantener una lista de cada clase que deba fabricar.
Yo me estaba imaginando Algo como esto:

Código:
Factoria 1 ----------- 1..* ElementosDeFactoria
            contiene
Código:
Para darles una idea... algo como esto:
TFactory = class
   private
     FactoryElement: TObjectList;
   ...
   public
     RegisterClass(ClassName, AObject);  ¿?
   ...
La intención es mantener la factoria lo más limpia posible. Hacer que dicho método RegistrarClase se encargue de mantenerlo en la lista y evitar tener que hacer demasiados cambios dentro de la estructura de la clase factoria.
Entiendo que es muy posible que este RegistrarClase deba ser declarado en forma abstracta.

Se que es un poco rebuscado lo que mi ya cansado cerebro anda pensando... estoy analizando pros y contras... Y siento como si hubiera perdido el sentido práctico del Patrón... O no se... tal vez he salido de éste y me he metido en el concepto de algún otro patrón que desconozco...

Les adjunto un ejemplo sencillo (demasiado en extremo) con el que estoy prácticado. He dejado entre comentarios algunos puntos que puedan ser de utilidad para comprender mejor el problema.

Les agradecería cualquier orientación o guia.
Sería oportuno que roman apareciera ya que parte de su código me inspiró... pero estoy abierto a escuchar sus alternativas.

Feliz navidad a todos y un próspero año nuevo.
Saludos,
Archivos Adjuntos
Tipo de Archivo: zip PracticaFabrica.zip (4,3 KB, 14 visitas)
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita