Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/05/2004, 12:50
Herminio Heredia San
 
Fecha de Ingreso: septiembre-2001
Ubicación: Monterrey
Mensajes: 663
Antigüedad: 22 años, 6 meses
Puntos: 6
Bueno me tome la molestia de revivir este mensaje, ahorita que contaba con un poco de tiempo.
Bien la problematica aqui es que hay muy poca informacion como para decirte que es lo mejor que puedes hacer para abordar tu problema calisco.
Pero suponiendo que los usuarios del area de noticias son administradores y pueden hacer cambio sobre ellas. supongo para inciiar el analisis que debes de tener una estructura logica similar a los siguiente qu epresenta la imagen En donde podemos ver que un usuario administrador del sistema puede manejar una o mas noticias, la estructura de los usuarios no la pongo explicitamente por que no se que campos requieres.
Ahora tu estas usando herencia para resolver el problema, pero yo te sugeriria que usaras un data mapper que te permite mantener comunicacion entre objetos y tu base de datos, la ventaja principal del mapper es que separa tu logica de como seran almacenados los datos en tu BD. Ademas de que gestiona todas las operaciones de busqueda y cambios en la base de datos. La estructura del mapper para tu caso en particular lo podemos ver en el siguiente diagrama. La parte que describe el mapper esta resaltado con colores. Como puedes ver el mapper hace uso de un objeto Noticia y tambien como resultado de sus operaciones de busqueda te devuelve una instancia de noticias y como puedes apreciar el mapper sirve de intermediario entre la base de datos y tu objeto noticias.
ahora si quieres hacer algo mas general tabien describo en el diagrama que puedes hacer una interface que sea implmentada para cada mapper que necesites como en el caso de las ligas que comentaste en un mensaje anterior.
El cargado tambien de los mapper puedes hacerlo mediante el patron FactoryMethod con el cual tu decidiras que mapper requieres en que momento. Y en mi conceptualizacion particular agrego un Iterator que mantiene una referencia de las instancias de Noticias. esto devido a que el mapper puede devolver un arreglo de instancias de noticias por lo cual un iterador me facilita el recorrido de dicho arreglo.
Ahora como modo de ejemplo te dejo la implementacion del mapper con codigo y de la clase noticias, para que los estudies. Los elementos que en el diagrama estan en blanco son opcionales y su estudio e implmentacion lo dejo a tu criterio.