Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/06/2013, 15:36
kiko's
 
Fecha de Ingreso: julio-2005
Mensajes: 310
Antigüedad: 18 años, 9 meses
Puntos: 36
Modelado de clases y Bases de datos relacionales

Hola,

Tengo un problema de diseño, no sé exactamente cuál sería la forma más correcta de hacerlo.

Estoy programando bajo Zend Framework.

Resumidamente tengo las siguientes tablas:

cliente (id, nombre, apellido)
reserva (id, precio, id_cliente)
Código PHP:
clase MyMapper {
 
// ...
}

clase Cliente extends MyMapper {
 private 
$_id;
 private 
$_nombre;
 private 
$_apellido;

 public static function 
getById($id){
  
//
 
}
}

clase Reserva extends MyMapper{
 private 
$_id;
 private 
$_id_cliente;
 private 
$_precio;

 public function 
getNombreCliente(){
  
$cliente Cliente::getById($this->_id_cliente);
  return 
$cliente->nombre;
}

Mi pregunta es... ¿es correcto (o lo más correcto) poner la función getNombreCliente() dentro de la clase "Reserva"?

¿Es correcto añadir una propiedad llamada "$_nombre_cliente", por ejemplo, dentro de la clase "Reserva"?

Mi duda es si la clase Reserva debe tener tantas y las mismas propiedades que la tabla Reservas o si esto, desde un punto de vista de la buena programación, no es necesario.

Espero haberme explicado.
Saludos y gracias.