Jordi Gracia nos cuenta las últimas novedades de Symfony 2
Symfony ha lanzado su nueva versión 2.7 con algunas mejoras y novedades en sus procesos. El framework desarrollado completamente en PHP 5.3 automatiza las tareas más comunes y permite al desarrollador focalizarse en los aspectos más específicos de cada aplicación por lo tanto, reduce el tiempo de desarrollo de cualquier sitio web. El framework está basado en el Modelo Vista Controlador (MVC) que es un patrón de diseño informático que separa la parte lógica del aplicativo -lógica de negocio-, la lógica de servidor y la parte visual. Symfony ha sido probado en diferentes proyectos reales sobre todo de e-commerce, ya que es compatible con la mayoría de gestores de bases de datos. Es por ello que en Fhios hemos decidido apostar por este framework y hacer la migración de muchos de nuestros programas a esta nueva versión para así, mejorar los procesos de ejecución y creación. Hemos aprovechado la ocasión para hablar con Jordi Gracia, desarrollador web en Fhios especializado en PHP, para que nos cuente un poco más sobre esta actualización. Además, Jordi está realizando la formación de Symfony 2 en nuestro departamento de Development. Así que… ¡qué mejor ocasión para hablar con un experto del framework!
Curso de formación en Symfony impartido por Jordi Gracia
¿Cuáles considerarías como características principales de Symfony con respecto al resto de los frameworks del mercado?
Symfony es un framework que está hecho en PHP y actualmente pienso que es el mejor que hay en el mercado. Los otros frameworks PHP existentes se han quedado un poco obsoletos a nivel tecnológico. Por lo tanto, si tienes que hacer una aplicación web basada en PHP es mejor utilizar Symfony.
Una de las características principales a destacar es que hay una comunidad muy importante de usuarios activos detrás del framework y mucha documentación al respecto. Además, la empresa que hay detrás de Symfony (SensioLabs) tiene un registro muy extenso con certificaciones válidas. Así que hoy en día, a nivel de frameworks, es el proyecto PHP más sólido y con más usuarios activos.
¿Qué novedades ofrece esta nueva actualización de Symfony en comparación con la anterior?
La novedad principal es que la versión 2.7 es LTS (Long Term Support). Esto significa que da a todos los programadores un margen hasta el 2018 para utilizar esta versión en concreto con actualizaciones y soporte técnico durante más tiempo. Además, hay una serie de mejoras que lo hacen más dinámico.
¿Cómo por ejemplo…?
1. Han hecho mejoras en Twig, a destacar un Twig Profiler. El Twig es el motor de plantillas que utiliza Symfony, los HTML que se visualizan. Es decir, lo que el usuario ve cuando entra en una web. Esta aplicación da información de relevancia a los programadores como por ejemplo el tiempo de carga de una página en los diferentes dispositivos, con el fin de tener una visión más de análisis de una pantalla HTML en concreto. En resumen, te informa si una plantilla tiene subplantillas que la integran y el tiempo de carga de estas subplantillas, entre otras cosas.
2. Han mejorado el sistema de traducciones. Symfony decidió simplificar el proceso de traducción para hacerlo más sencillo y ahorrar tiempo a los desarrolladores. Ahora la barra de herramientas muestra un nuevo panel de traducción que mejora la productividad, dando una visión general de la situación de cada uno de los mensajes. Antes el sistema era un poco arcaico y en esta versión lo han pulido mucho más.
Panel de traducción Symfony 2.7
3. Symfony ha implantado mejoras para debugar en su nueva actualización. Es decir, ha mejorado el proceso para detectar errores. Ahora el sistema pasa por todo el programa punto por punto hasta llegar donde está el error y detectar qué está fallando. Antes teníamos que instalar herramientas externas para debugar, pero ahora Symfony ya empieza a introducir elementos propios para hacerlo más simple.
4. Además ha mejorado el componente de seguridad, el que se encarga de la autentificación y autorización de usuarios al aplicativo. La novedad es que lleva incorporado un comando para encriptar contraseñas de manera automática.
A parte de estas mejoras principales también ha implementado muchas correcciones de bugs que facilitan el trabajo de los desarrolladores.
En tu opinión ¿cuál es la característica principal de Symfony 2?
A parte de la comunidad, que es una de las mayores características que hacen de Symfony un buen framework, otra importante es que se pueden incorporar bundles de terceros. La gracia que tiene el framework es que puedes adaptar cosas que ya están hechas, y no tienes la necesidad de programarlas de nuevo. Al haber tantos usuarios activos es muy bueno porque hay muchas cosas que ya están hechas. De esta manera solo hay que cargarlas, adaptarlas a las necesidades de tu aplicación y ya funciona.
Hace ya 1 mes que estás impartiendo la formación de Symfony 2 en la empresa. ¿Cómo va a afectar esta nueva actualización en los procesos internos de FHIOS?
Todas las aplicaciones internas que hay en FHIOS y que tienen Symfony como framework las estoy migrando a esta nueva versión. Estamos actualizando todas las aplicaciones para un futuro, y haciendo un mantenimiento del código para tener un menor impacto en próximas actualizaciones. Así, las aplicaciones estarán adaptadas para los nuevos códigos.
¿Qué va a aportar de nuevo a nuestros clientes esta migración?
El beneficio para nuestros clientes es que, si empezamos a hacer las aplicaciones a 2.7, tendremos tres años de mantenimiento de calidad de código y de mejora del propio framework. Es una buena versión con la que empezar. Ahora sabemos que la versión Symfony 2.3 está discontinuada y en cambio con la 2.7 tenemos el mantenimiento, ya que es una versión LTS.