Ver Mensaje Individual
  #9 (permalink)  
Antiguo 14/01/2008, 07:25
Avatar de pragone
pragone
 
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 5 meses
Puntos: 2
Re: Busco comentarios sobre un ¿nuevo? concepto

Pues la idea es que sea una capa de abstracción que te permita trabajar en OO sin pensar en la BD... ahora bien... eso también podría ser la definición de Propel (por ejemplo).

Sin embargo, hay una diferencia. Por ejemplo:
Imagina que tienes:
Clase Vehículo. Propiedades: nombre y precio
Coche extiende a Vehículo. Propiedades: puertas
Carroza extiende a Vehículo. Propiedades: caballos

En un ORM si quieres encontrar un Vehículo con cierto rango de precios (sin importar el tipo de vehículo), deberías buscar en Coche por el rango que deseas y en Carroza por el mismo rango. Esto es así porque un ORM funciona bajo un paradigma funcional.

Sin embargo, bajo un paradigma OO, lo lógico sería buscar en todos los Vehículos.
Eso es lo que permitiría esto. Hacer un:
SELECT Vehículo WHERE precio BETWEEN 0 AND 100
Y esto te devolvería indiferentemente Coches o Carrozas.

En pocas palabras, es algo que toma en consideración la herencia (la base del OO) y que sí te abstrae completamente de la forma en la que implementes la persistencia.

¿Para qué?, por ahora es simplemente conceptual aunque estoy trabajando en su desarrollo.

Desde un punto de vista de implementación, efectivamente esto se traduciría en tablas en el manejador de BBDD relacional, pero por ahora no he puesto la implementación (todavía estoy trabajando en el diseño... apenas lo tenga lo coloco para que me den su feedback )