Ver Mensaje Individual
  #4 (permalink)  
Antiguo 14/07/2008, 09:08
guille_el3
 
Fecha de Ingreso: abril-2008
Mensajes: 264
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: dudas respecto a poo

Cita:
Iniciado por moron Ver Mensaje
Creo que además es una forma de desacoplar los objetos y no cargar de responsabilidad a algunos objetos de mas
Justamente estas acoplando más los objetos. Estas asignando responsabilidades al libro que no son de él. ¿Porque tiene el libro que encargarse de conectarse con la base de datos? O sea si quieres tener objetos que cumplan el patron de "creator" o "experto" que no conozco (sí conozco patrones creacionales como builder, factory, singleton) tenlos, pero que no sea el libro.

El acoplamiento es una forma de medir el grado de relacion entre varios objetos. Si tu libro es quien instancia a los autores, entonces decimos que estan muuy acoplados los libros con los autores, pues en tu libro hay muchas lógicas distintas, entre ellas:
a) como estan formados los autores
b) como es tu esquema de persistencia
c) no es independiente de tu capa de presentacion donde utilizas los ids o Oids.

Lo que yo haria es oootro objeto que se encargue de la persistencia, y que el libro solo reciba autores. De esa manera el libro sí esta desacoplado y el acoplamiento ahora va a estar en quien persiste porque es él quien va a saber como estan formados los autores. Por lo menos así tus autores mañana pueden cambiar sin que los libros se enteren.

Y no es cuestión de escribir más o menos codigo. Lo importante es que son unidades lógicas distintas, probablemente con reglas distintas cada uno. Si le sumas responsabilidades que no son propias el dia de mañana esos objetos van a ser incomprensibles... Y yo prefiero tener muchos mas objetos a eso.

Espero que se haya entendido algo :P
Suerte!
__________________
Saludoss
Guille