Hola Leandro, Para decirlo con seguridad deberia conocer mas detalles pero es dificil que puedas decirme mucho mas sin explicarme todo. Me parece que podrias explorar el patron State para el estado del cliente. Cada estado seria el encargado de crear el calculador de impuesto y devolverlo. Algunos estados devolveran siempre el mismo calculador, otros analizaran algun dato del cliente y devolveran uno u otro calculador, etc. Entonces, creo que aca tendrias que aplicar dos patrones, State por un lado y una espcie de plugin o strategy para los calculadores. Tal como yo lo veo no es necesario acceder al repository, pero tampoco tendria nada de malo. Pensa un poco en esta alternativa y avisa si tenes alguna duda con los patrones que mencione. Carlos Peix
_____ From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Miércoles, 31 de Octubre de 2007 12:20 p.m. To: patrones List Member Subject: [patrones] Factory Pattern aplicado al la logica de negocio Hola Carlos que tal. Paso a explicar con un poco mas en detalle. Tengo una transaccion bancaria a la que se le aplicaran impuestos, la cuestion es que la decision de que impuestos aplicar varia en base a info del cliente y su estado de cuentas, en realidad no se muy bien aun cual sera la logica aplicada para determinar que impuestos especifico aplicar, pero si se que del resultado de eso devolvera el concreto del impuesto. Por ejemplo si seran impuestos nacionalales, internacionales, etc, cada impuesto por supuesto tiene la logica de como se calcula. La cuestion es que este Factory deberia tal vez recibir un cliente y ademas consultar al repositorio el resto de la info en base a este. Justamente lo que no se es si es correcto que el Factory este atado a un objeto como parametro y ademas a la consulta a la db. O si implementarlo pasandole como parametro toda la info que necesite (tal vez con un objeto Context), y que solo aplique logica para resolver que devolver, sin consultar a nada externo. Espero se entienda un poco mas, sino paso mas detalles. Saludos Carlos Peix <[EMAIL PROTECTED]> escribió: Hola Lenadro, Podes describir un poco el caso real? es posible que el patron State sea mas adecuado pero para saberlo seria bueno disponer de mas informacion. Carlos Peix _____ From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Leandro Tuttini Sent: Miércoles, 31 de Octubre de 2007 10:19 a.m. To: patrones List Member Subject: [patrones] Factory Pattern aplicado al la logica de negocio Hola, que tal. Queria plantear una duda conceptual que por supuesto repercutira en la implementacion. La duda esta referida al patron Abstract Factory, aunque creo que el Factory Method tambien estaria incluido. En todos los papers y notas que pude ver este patron sera el encargado de decidir que concreto devolver en base al contexto. Ahora bien resulta que casi siempre es aplicado en la construccion de objetos de infraestructura como ser ventanas, botones, por ahi basados en el ambiente donde se ejecuta, y este resuelve en base a la lectura de un archivo de configuracion. Ahora bien que sucede si se quiere aplicacar este patron a reglas de negocio, pero que dedida en base a informacion de una transaccion, (por ejemplo, info del cliente), en este caso la configuracion no serviria. Este tipo de caso como se implementaria, o sea se deberia crear un objeto Context que se info especifica y se lo pasaria al constructor del Factory, o se puede leer desde la base de datos, caso que el cliente, por ejemplo, no alcance para resolver que objeto concreto crear. Es correcto que la implementacion del factory este atado a la lectura de un repositorio? En realidad no al concreto del repositorio, pero si a su interfaz. Bueno seria esta simplemente la duda, como utilizar el patron de creacion cuando se trata de aplicarlo a objetos de negocio. Saludos _____ Los referentes más importantes en compra/venta de autos se juntaron: Demotores y Yahoo!. Ahora comprar o vender tu auto es más fácil. Visitá http://ar.autos.yahoo.com/ _____ Los referentes más importantes en compra/venta de autos se juntaron: Demotores y Yahoo!. Ahora comprar o vender tu auto es más fácil. Visitá http://ar.autos.yahoo.com/