Zend Framework se rinde ante Doctrine

Benjamin Eberlei acaba de anunciar hace unos minutos que abandona el desarrollo de Zend_Entity, un proyecto que pretendía crear un ORM nativo para Zend Framework. A partir de ahora, dedicará todos sus esfuerzos a mejorar el ORM Doctrine y su integración con el Zend Framework.

Las razones esgrimidas para esta decisión son las siguientes:

  1. Le consume demasiado tiempo y ha llegado a ua situación de bloqueo
  2. Zend_Entity sólo tiene un desarrollador y por eso no tiene ni la mitad de características de Doctrine 2
  3. La fecha prevista de finalización de Zend_Entity era de hasta seis meses, algo que no encaja muy bien con la planificación de las nuevas versiones de Zend Framework

Matthew Weier O'Phinney, máximo responsable de Zend Framework, está de acuerdo con la decisión porque "creemos que ayudar a mejorar un proyecto existente [Doctrine] y trabajar en su integración [con Zend Framework] será mejor para toda la comunidad de PHP".

Esta decisión supone una excelente noticia para todos:

  • Doctrine gana una enorme base de usuarios que ayudarán a mejorar el proyecto.
  • Zend Framework gana el acceso al mejor ORM de PHP.
  • Los usuarios ganan porque Doctrine será todavía mejor.
  • Symfony gana porque de forma indirecta controla el proyecto Doctrine y de esta forma se asegura que su integración siempre va a ser mejor que la de Zend Framework.

Felicidades a Jonathan Wage y el resto de programadores de Doctrine por el enorme esfuerzo que dedican a Doctrine y por este gran éxito. Felicidades también a Fabien Potencier, creador y máximo responsable de Symfony, por ver antes que nadie el brillante futuro de Doctrine y por asegurarse el control indirecto del proyecto contratando a su principal desarrollador. No en vano Fabien aseguró recientemente que "Doctrine 2.0 is gorgeous. Doctrine 2.0 is one of best things that's happened to PHP in a long time."

Comentarios

  1. Con Doctrine basado en Hibernate y el componente de Symfony "Dependency Injection" basado en Spring espero que PHP entre como uno mas en las posibilidades de la empresa como java o .net.

    Ahora solo falta una buena plataforma como Zend Server pero libre.

    Symfony con algunos añadidos de Zend (como zend_amf) se va a volver intratable !!! :-)

    Antonio Garcia el 30 de octubre de 2009, 9:43:26

  2. "Symfony gana porque de forma indirecta controla el proyecto Doctrine y de esta forma se asegura que su integración siempre va a ser mejor que la de Zend Framework."

    Que concepto mediocre.

    Ganan todo. Porque esto no solo demuestra que Zend Framework es un gran proyecto, sino que ademas no teme asociarse con otros proyectos de codigo abierto para hacerse mejor y mas completo.

    Zend hace el codigo de PHP que es el que usa symfony y doctrine. En la piramide, Zend tiene mas poder que el que podria tener symfony por haber contratado un developer.

    Pablo Morales el 30 de octubre de 2009, 15:12:56

  3. Pablo, tienes mucha razón en que Zend Framework es un gran proyecto y que no teme asociarse a otros proyectos de código abierto. De hecho, Zend demuestra ser inteligente eligiendo Doctrine y Symfony también demuestra ser inteligente por haber prometido que no hará componentes que ya estén hechos en Zend Framework.

    Lo que quería decir es que Doctrine ahora será mucho mejor porque lo van a utilizar miles de nuevos usuarios y eso también va a beneficiar a Symfony, ya que su integración con Doctrine siempre será igual o mejor que con cualquier otro framework.

    Respecto a que "Zend hace el código de PHP", me temo que no es correcto. PHP es un lenguaje de programación cuyas especificaciones define el "The PHP Group". Lo que hace la empresa Zend es el "Zend Engine", que es una de las muchas aplicaciones que existen para interpretar las aplicaciones programadas con PHP.

    Javier Eguiluz el 30 de octubre de 2009, 15:49:57

  4. @Javier Gracias por la ultima aclaracion no estaba al tanto.

    Con respecto a lo otro, si symfony no va a hacer componente que ya existan en ZF, deberian crerar un componente o wrapper para integrerarlo. Esto existe actualmente?

    Pablo Morales el 30 de octubre de 2009, 16:27:01

  5. @Pablo, no existe un componente para integrar Zend en Symfony porque realmente no se necesita. Como los dos son frameworks, no interesa meter uno entero dentro del otro; lo importante es que las aplicaciones de Symfony puedan utilizar los componentes de Zend y viceversa.

    Utilizar componentes de Zend en Symfony es facilísimo, ya que sólo tienes que descargar Zend, configurar su autoloader y ¡ya está! Puedes leerlo en la charla que dio recientemente el creador de Symfony sobre cómo integrarlo con Zend: http://www.slideshare.net/fabpot/symfony-and-zend-framework-together-2009

    Javier Eguiluz el 30 de octubre de 2009, 17:24:51

  6. Llevo sin programar en serio con php desde hace ya 4 años (una eternidad, ya lo sé). No estoy familiarizado con la programación orientada a objetos, aunque más o menos pienso que la entiendo. Quiero volver a desarrollar, y veo que sin un framework va a ser harto dificil mantener distintos proyectos medianos con pocos recursos humanos (yo y mi sombra). Hasta hace poco poco pensaba en Symfony, hablando hace unos dias un amigo administrador de sistemas (ex programador) me recomendaba Zf poque 'es mas dificil, pero es más completo y tiene más base de programadores' lo que me hizo pensar. Ahora dandole vueltas a Zend, veo (o tengo la impresión) que su acceso a base de datos es sin orm, que no se muy bien que es, pero la nariz me dice que es necesario. He llegado a un articulo (http://www.symfony.es/2009/10/29/zend-framework-se-rinde-ante-doctrine/) en el que dice que Zf se puede integrar con Doctrine y que Symfony puede usar componentes de Zf, con lo cual me vuelve a parecer buena idea trabajar con Symfony+Doctrine y a lo mejor integrar componentes pero la verdad es

    Ivan González el 7 de noviembre de 2009, 9:24:54

  7. Llevo sin programar en serio con php desde hace ya 4 años (una eternidad, ya lo sé). No estoy familiarizado con la programación orientada a objetos, aunque más o menos pienso que la entiendo. Quiero volver a desarrollar, y veo que sin un framework va a ser harto dificil mantener distintos proyectos medianos con pocos recursos humanos (yo y mi sombra). Hasta hace poco poco pensaba en Symfony, hablando hace unos dias un amigo administrador de sistemas (ex programador) me recomendaba Zf poque ‘es mas dificil, pero es más completo y tiene más base de programadores’ lo que me hizo pensar. Ahora dandole vueltas a Zend, veo (o tengo la impresión) que su acceso a base de datos es sin orm, que no se muy bien que es, pero la nariz me dice que es necesario. He llegado a este articulo (http://www.symfony.es/2009/10/29/zend-framework-se-rinde-ante-doctrine/) en el que dice que Zf se puede integrar con Doctrine y que Symfony puede usar componentes de Zf, con lo cual me vuelve a parecer buena idea trabajar con Symfony+Doctrine y a lo mejor integrar componentes, pero la verdad es que la cabeza ya me da vueltas.

    ¿Hay alguien que haya trabajado con ambos que pueda ser objetivo y recomendarme algo con lo que no deba cambiar todo dentro de un par de años (otra eternidad ya lo se)?

    Gracias por aguantar el tostón y las respuestas.

    Ivan González el 7 de noviembre de 2009, 9:27:30

  8. Iván, como evidentemente yo no soy objetivo no puedo contestar a tu pregunta. Aún así, me gustaría decirte que:

    1) El primer paso ya lo has dado bien, apostando por utilizar un framework bueno en vez de hacer todo a mano. 2) Dentro de un proyecto realizado con Symfony puedes utilizar todos los componentes de Zend. 3) Efectivamente un ORM suele ser imprescindible en la mayoría de proyectos y Symfony tiene una integración perfecta con los dos más populares (Doctrine y Propel).

    Por último, sólo quería comentarte que si para tu decisión es importante tanto la cantidad como la calidad de la documentación del framework (tanto en inglés como en español), puedes buscar en Google y verás que Symfoy es el framework PHP más documentado con mucha diferencia.

    Javier Eguiluz el 10 de noviembre de 2009, 22:36:55

  9. Saludos, con el firme interes de aprender PHP5 y programar con un framework, he implementado mi blog, para ir subiendo los temas mas relevantes que considero todo desarrollador deberia conocer y manejar a la perfección. dentro de esos temas estoy revisando OOP, ORM, RAD, DRY, KISS, TDD, YAML y PEAR que lei http://www.librosweb.es, considera algun o algunos temas llamados fundamentales a la hora de enfrentarse a programar?

    Carlos Fernando Benitez el 15 de noviembre de 2009, 22:36:31

  10. Hola a todos bueno también soy novato en todo esto de los frameworks y la verdad me interesa mucho aprender a utilizarlos para mis proyectos. Y quisiera saber con cual me recomiendan comenzar y que libros son buenos (si dejan link mejor). Gracias

    Luis el 26 de marzo de 2010, 15:19:20

Este artículo ya no permite añadir más comentarios.
¿Por qué? Los artículos cierran sus comentarios automáticamente unos meses después de su publicación para asegurar que estos sigan siendo relevantes.

Publicada el

29 de octubre de 2009

Etiquetas

Proyectos Symfony destacados

La forma más sencilla de generar el backend de tus aplicaciones Symfony. Ver más

Síguenos en @symfony_es para acceder a las últimas noticias.