Ver Mensaje Individual
  #3 (permalink)  
Antiguo 19/08/2011, 06:21
Avatar de Ronruby
Ronruby
 
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Object Oriented en la cruda realidad

Yo iria por la 2da opcion. Crear la clase Persona como clase Padre de los demas tipos de usuarios.
Cita:
Vale, ahora vamos a la segunda parte. Nos quedamos con la clase User y nos olvidamos de Empleados, Clientes ...
Un usuario se guarda en la tabla Usuarios de la BD. Supongo que de alguna forma debería heredar de otra clase cómo guardar y extraer la info de la BD. En el fondo haríamos algo como User->LoadByNick("nickname"), o bien User->Save()

¿ como hacerlo independiente de tipo de BD o formato ? Si en vez de usar Mysql quisiera grabar en un fichero ascii ? Debería heredar ? o bien obtener de una variable mas global el objeto "storage" y que este manejara si es una BD o un fichero ascii ...
Primero, la clase User no debe interactuar con la base de datos. Lo mejor seria usar un patron de diseno llamado Data Access Object. Utilizando ese patron de diseno tambien aislas tu base de datos, asi es mas facil cambiar entre una y otra sin ningun cambio invasivo en tu codigo ya creado.

En cuanto a tu otra duda, no comprendo bien a lo que te refieres.