2010-08-14 24 views
14

Uso Zend_Db en algún proyecto, descubro que Doctrine existe pero nunca lo usé.¿Por qué debería usar Doctrine sobre Zend_Db?

¿Cuáles son las ventajas de Doctrine over Zend_Db? ¿Cuáles son los beneficios de usar Doctrine?

Por cierto, ¿es fácil usar Doctrine con Zend Framework 1.10.7? Integración y uso con el otro componente? Ya que no parece existir un adaptador Doctrina

Gracias

Respuesta

12

Doctrina es un ORM. Está destinado a persistir en la base de datos de un modelo de objetos de dominio enriquecido y permitir la consulta de forma efectiva, manteniendo los resultados como objetos. Zend_Db comprende una implementación de los patrones de diseño de pasarela de datos de tabla y fila, que proporcionan un esquema simple para consultar una sola tabla y manipular sus filas. Eso hace que Zend_Db sea una especie de primo menor de Doctrine, siendo este último mucho más poderoso y útil a la vez que más complejo e intensivo en recursos. Si tiene un modelo de dominio enriquecido con muchas interrelaciones, Doctrine es su solución para administrar toda la complejidad. Para CRUD simple en tablas simples, por supuesto, vaya por Zend_Db.

No necesita un adaptador para Doctrine, simplemente úselo. Sin embargo, varias clases en Zend Framework se integran fácilmente con Zend_Db, como la validación basada en la existencia de fila de la base de datos, y tendrás que cocinar tus propios equivalentes. Tomará algún trabajo, pero no es una tarea compleja, y es posible que pueda encontrar algunas implementaciones disponibles en la red.

Cuestiones relacionadas