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

Mejor Opcion

Estas en el tema de Mejor Opcion en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola, queria pregutarles una duda: Supongamos que tenemos dos clases: Código: class Seccion: tiene varios atributos(nombre_seccion,etc), el constructor y los metodo get y set de ...
  #1 (permalink)  
Antiguo 06/07/2007, 11:01
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Mejor Opcion

Hola, queria pregutarles una duda:

Supongamos que tenemos dos clases:

Código:
class Seccion:
           tiene varios atributos(nombre_seccion,etc), el constructor y los 
metodo get y set de todos los atributos.
Código:
class SeccionDB extends DB: una clase para insertar secciones, ver 
informacion , etc.
Cual veis que es la mejor opcion de las dos siguiente: (o proponer otra alternativa)

1.- en la clase Seccion, un metodo insertar_seccion...
Código PHP:
function insertar_seccion(...){
     return new 
SeccionDB(...);

ejemplo

Código PHP:
$seccion = new Seccion(...);
$bd $seccion->insertar_seccion(...);
$bd->query($sql//el nombre de query supuestamente esta en la clase SeccionDB, sirve para realizar la consulta. 
2.- que la clase Seccion extienda a SeccionDB...
Código PHP:
class Seccion extends SeccionDB 
ejemplo
Código PHP:
$seccion = new Seccion(...);
$seccion->query($sql); 
Como lo veis???
  #2 (permalink)  
Antiguo 10/07/2007, 09:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Mejor Opcion

Creo la mejor idea es que abstraigas y que directamente tu clase seccion cree dentro de ella un objeto BD y que automáticamente sepa como guardarse, o actualizarse y en dado caso borrarse.

Esto se le conoce como el patrón ActiveTable, te invito a que te des una vuelta por mi blog para que sepas como implementar el patrón.

Saludos.
  #3 (permalink)  
Antiguo 10/07/2007, 13:00
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejor Opcion

Gracias por la respuesta GatorV. Ya estuve un dia viendo tu blog y me parecio muy interesante.enhorabuena!

Podrias explicarme brevemente en que consiste el patron ActiveTable y ActiveRecord...

No he conseguido entenderlo bien...

Saludos!!!
  #4 (permalink)  
Antiguo 10/07/2007, 14:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Mejor Opcion

Te invito a que leas mi blog, tengo un articulo especifico sobre ActiveRecord y ActiveTable.

Saludos.
  #5 (permalink)  
Antiguo 10/07/2007, 17:54
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejor Opcion

GatorV una pregunta:

esta linea:

$this->_db = DB::getInstance();

Que clase static de Base de datos has usado?


Saludos
  #6 (permalink)  
Antiguo 10/07/2007, 18:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Mejor Opcion

Mas abajo viene un articulo sobre PDO donde se muesta como implementar el patron Singleton sobre PDO.

Saludos.
  #7 (permalink)  
Antiguo 10/07/2007, 19:29
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Mejor Opcion

me da error que el constructor sea privado...en la clase DB

Saludos
  #8 (permalink)  
Antiguo 10/07/2007, 20:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Mejor Opcion

Asi es, es porque tienes que usar el patron Singleton forzosamente para obtener el objeto DB.
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 08:27.