Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

BD Abstraccion de CLASES DAO

Estas en el tema de BD Abstraccion de CLASES DAO en el foro de Frameworks y PHP orientado a objetos en Foros del Web. hola, neceisto un poco de orientacion respecto ala abstraccion de clases de Bases de datos, leyendo me eh topado con DAO (data access object). mis ...
  #1 (permalink)  
Antiguo 16/09/2008, 23:06
 
Fecha de Ingreso: septiembre-2008
Mensajes: 7
Antigüedad: 15 años, 7 meses
Puntos: 0
BD Abstraccion de CLASES DAO

hola, neceisto un poco de orientacion respecto ala abstraccion de clases de Bases de datos, leyendo me eh topado con DAO (data access object).

mis preguntas son las siguentes:

1. para cada clase que utilize en mi sistemas necesito un DAO?, es decir si tengo clase persona, clase figuras, requiero un dao para cada una?

2. que acciones hace un dao? SELECT, INSERT, UPDATE , DELETE ?

saludos! y gracias
  #2 (permalink)  
Antiguo 17/09/2008, 08:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: BD Abstraccion de CLASES DAO

Hola luizcruz,

En teoria si necesitas una clase por cada tabla, y la finalidad es que la clase DAO sea el gateway entre tu aplicación y tu medio persistente de información.

Las acciones mas comunes son esas, pero pueden hacer mas cosas, la idea es que tu solo le digas a tu DAO, guarda, o trae o actualiza esto, y la clase DAO sea la que haga el trabajo de guardar donde requieras.

Saludos.
  #3 (permalink)  
Antiguo 17/09/2008, 11:03
 
Fecha de Ingreso: septiembre-2008
Mensajes: 7
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: BD Abstraccion de CLASES DAO

Gracias gator.

una pregunta mas

cual seria el problema si usas un solo dao para todas las clases? en el cual puedas hacer select,update,insert,delete dinamicamente segun los parametros que tu necesites?

la pregunta va enfocada al uso de buenas practicas.
  #4 (permalink)  
Antiguo 17/09/2008, 11:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: BD Abstraccion de CLASES DAO

Ese DAO seria la base de tus demas DAOs, y en lo que ayuda es que viendo el codigo se hace mas facil de "leer" y de entender que hace, por ejemplo es mas claro:
Código php:
Ver original
  1. $users = new Users();
  2. $thisUser = $users->find(1);

a
Código php:
Ver original
  1. $users = new DAO('users','userid'); // o algo por el estilo
  2. $thisUser = $user->find(1);

Adicionalmente al tener tu clase por tabla puedes tener métodos más complejos, por ejemplo $users->findDisabledUsers() o findUsersWithLastName()

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:11.