Se publica Zend Framework 2.0.0 final

La esperada versión final de Zend Framework 2.0.0 acaba de ser publicada, según se anuncia en su blog oficial. Cinco años después del lanzamiento de Zend Framework 1 y 13 meses después del lanzamiento de Symfony2, llega la nueva versión del rival más importante de Symfony.

Las principales novedades de Zend 2 respecto a la versión anterior son tres:

  • un nuevo sistema de módulos para organizar el código (parecido a los bundles de Symfony2)
  • una nueva arquitectura basada en servicios mediante la Inyección de Dependencias (también igual que en Symfony2)
  • un gestor de eventos para olvidarse de los hooks y poder ejecutar código propio en cualquier punto de la ejecución de las aplicaciones (idéntico a Symfony2)

Desde el mundo Symfony se han oído algunas críticas a la cabezonería de Zend, que ha preferido reinventar la rueda en vez de utilizarla. Zend no utiliza ninguno de los componentes liberados por el proyecto Symfony, a pesar de que se ha demostrado que en casos como en el de los formularios, las similitudes son más que sospechosas.

En mi opinión, el principal error de Zend 2 es seguir utilizando PHP para crear las plantillas. Leyendo la documentación de la parte de la vista te das cuenta de la gran pérdida de productividad que van a sufrir los programadores Zend respecto a los programadores Symfony. No es cuestión de gustos personales, Twig es mil veces mejor que cualquier otro lenguaje de plantillas, incluyendo PHP.

Si quieres probar Zend Framework 2 tu mismo, accede a la página de descarga y no olvides echar un vistazo a su manual.

Comentarios

  1. Lo de Twig es totalmente cierto, anda que no es divertido trabajar con él y hacer cosas del tipo "yo creo que esto funcionará así" Y FUNCIONA!.

    Otro comentario sobre el nuevo site, no le vas a añadir RSS?

    Eduardo García Sanz el 6 de septiembre de 2012, 10:21:15

  2. no estoy de acuerdo cuando dices "idéntico a Symfony2". Los componentes como el gestor de eventos, la inyección de dependencias son diferentes. Y el componente Zend\Form no viene de Symfony2 sino de perl me parece. Symfony2 se ha inspirado de django o ruby creo (corrigeme si me equivoco). Solo para decir que los dos no han inventado nada.

    Por lo de Twig, se puede utilizar facilmente con ZF2.

    Lo que no me gusta con ZF2 es la configuración con array. Me gusta más la config YAML.

    David Quintanel el 6 de septiembre de 2012, 10:31:27

  3. David, cuando escribo "idéntico a Symfony2" me refiero a las ideas, no al código o a la forma de implementarlo.

    Los formularios no vienen de Perl, sino de Java. De lo que se quejaba el creador de los formularios de Symfony2 es que los de Zend 2 se parecían demasiado, especialmente en las cosas en las que los de Symfony2 difieren de los de Java.

    Respecto a Twig, es cierto que se puede utilizar fácilmente. El problema es que no es la solución estándar de Zend 2 y así se refleja en la documentación y en todas las decisiones técnicas que tome el framework. Creo que al final les pasará lo mismo que con Doctrine: primero trataron de crear un ORM propio. Después se tuvieron que rendir a la evidencia y se pasaron a soportar Doctrine.

    Respecto a la configuración, creo que es algo en lo que los programadores jamás nos pondremos de acuerdo. Así que me parece bien la decisión de Symfony de soportar la configuración con YAML, XML, arrays PHP, anotaciones y hasta archivos INI.

    Por último, tienes toda la razón en que "los dos no han inventado nada". De hecho, Symfony2 se enorgullece de utilizar siempre las mejores ideas que haya en el mercado, sin importar la tecnología que utilicen (Symfony2 tiene cosas de Django/Python, RubyOnRails, Spring/Java, ...). El problema de Zend 2 (en mi opinión) es que todo lo que presenta como novedades, ya lo presentó Symfony2 hace más de un año.

    Javier Eguiluz el 6 de septiembre de 2012, 11:51:47

  4. He probado el "get started" de su pagina oficial de Zf2 y a su vez el mismo "get started" en sf2. Y valgan verdades Zf2 va mas rapido que Sf2 ... O.O?? sera por el motor plantillas twig ?? ... O.o

    Willy Tito Sucasaire el 6 de septiembre de 2012, 17:39:44

  5. Corrigo el comentario anterior, actualize el "get started" de sf2 a sf2.1 ... y su velocidad mejoror radicalmente o.O ... Por cierto alguien pudo hacer el UPGRADE a la version 2.1 de symfony de forma CORRECTA !!! :S

    Estoy teniendo problemas con el composer.lock, siempre me pide hacer composer.phar update ??? y cuando ejecuto dicho comando me actualiza a la version 2.1.1-DEV e incluso de tantas pruebas que hice me actualizó hasta las version 2.2-DEV ?? O.o ... ¿A alguien le ha sucedido esto? :S

    Willy Tito Sucasaire el 7 de septiembre de 2012, 18:51:45

  6. El que se diga que se ha reinventado la rueda en vez de usarla, quiere decir que en vez de apoyar algo ya creado, y muy bien hecho han decidido perder tiempo rehaciendo el trabajo. No se critica que copien porque ninguna idea es completamente original. Su única justificación sería que mejoraran la implementación de Symfony y eso lo veo muy difícil.

    Héctor Iván Patricio Moreno el 7 de septiembre de 2012, 23:15:52

  7. Decir que dos casas son iguales porque tiene ventanas y puertas. ZF2 tiene otra estructura, es cierto que el concepto de DI es muy similar al de Sf2, pero creo que ZF2 se basa en ZF1 pero haciendo uso de las mejoras de PHP5.3.

    ¿Creo que lo mismo sucedió con Sf1 a Sf2, o me equivoco? ZF2 solo mejoro sus componentes. ZF1 se podía integrar con la última versión de Twig y con la última de Doctrine ORM, en ZF2 también se podrá.

    Cesar Gutierrez Tineo el 9 de septiembre de 2012, 6:39:59

  8. César, el paso de Sf1 a Sf2 no fue como comentas, sino bastante más drástico. Sf2 no se parece en nada a Sf1. De hecho, es como si fuese otro framework. Los creadores de Symfony llegaron a la conclusión de que no se podría mejorar radicalmente el framework a menos que tiraran todo a la basura y empezaran de nuevo ... ¡y eso hicieron!

    Con respecto a la posible integración de Twig y Doctrine con Zend 2, nadie dice que no se pueda. Pero ten en cuenta que es muy diferente decir "el que quiera puede integrarlo" a "es la solución estándar del framework". ¿Has visto Twig? ¿No te parece mil veces mejor que PHP? En mi opinión, esa es una ventaja competitiva insalvable entre Symfony2 y Zend 2.

    Javier Eguiluz el 9 de septiembre de 2012, 23:04:31

  9. Lo de Zend es íntegramente comercial, desarrollando un Framework para "vender" su marca detrás de ello. Por eso la necesitad de reinventar la rueda. No tienen un interés real en colaborar con otros proyectos hasta que es demasiado tarde para ellos.

    Javier Vivanco el 10 de septiembre de 2012, 17:50:23

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

6 de septiembre de 2012

Etiquetas

Proyectos Symfony destacados

La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más

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