Comparativa de Frameworks PHP: Symfony, Laravel y Más
Clase 16 de 17 • Curso de Symfony Framework
No todo lo que brilla es Symfony
Así es, a pesar de que te resulte difícil de creer después de lo que has aprendido, hay gente que se empeña en desarrollar otros frameworks :)
La verdad es que, si bien Symfony es una excelente herramienta, existen otros modos de resolver los mismos problemas, e incluso, hay frameworks orientados a escenarios específicos.
Veamos algunos de ellos
Laravel
Laravel es, probablemente, el competidor por excelencia de Symfony.
Se trata de otro framework tipo full-stack basado en el patrón MVC.
Generalmente se le considera un framework muy profesional y, a la vez, muy sencillo.
Internamente utiliza varios componentes de Symfony (el más prominente es el de los comandos de consola).
ZendFramework
ZendFramework es otra alternativa desarrollada originalmente por la empresa Zend.
Actualmente ha pasado a ser soportado en forma comunitaria y cambió su nombre por Laminas.
Es algo más similar a Symfony en el sentido de que está desarrollado con un foco muy fuerte en lograr una buena arquitectura.
Yii
Yii es una alternativa algo menos popular que Symfony o Zend, pero también puede considerarse un framework profesional.
CodeIgniter
Se trata de un framework bastante más sencillo que Symfony o Laravel. Esto no significa que no pueda utilizarse para desarrollos grandes, es sólo que las herramientas con las que cuenta no son tan elaboradas y el código resultante no es tan correcto desde el punto de vista de la arquitectura
Cake
Cake es otro framework sencillo. Su objetivo es permitir el desarrollo rápido tomando como base el principio de convención en lugar de configuración.
Esto hace que la barrera de entrada a Cake sea más baja que en otros entornos.
La desventaja principal que presenta es que las aplicaciones resultantes suelen ser más lentas que las generadas usando alguna otra alternativa.
Phalcon
Una última opción que quiero presentarte es Phalcon.
Se trata de la oveja negra de la familia ya que, a diferencia de los anteriores, Phalcon está escrito en C, lo cual hace que la velocidad sea un tema irrelevante.
Su desventaja principal es que la instalación es más compleja que lo que podemos estar acostumbrados, pues se requiere instalar una extensión de php para usarlo.
Por otro lado, comprender qué es lo que hace el framework cuando procesa una petición es complicado (Para empezar, hay que saber C).
Cómo elegir
En general, el criterio de elección es sumamente personal, pero existen algunos aspectos a tener en cuenta siempre:
- ¿Es un framework mantenido activamente?
- ¿De cuándo es el último commit?
- ¿Qué tan grande es la comunidad? ¿Hay foros? ¿Quién me puede ayudar si me trabo?
- ¿Tiene buenas bibliotecas?
- ¿Qué tal es la documentación?
En mi caso elijo Symfony porque me gustan mucho las respuestas a estas preguntas y porque me resulta una herramienta muy cómoda (¡y cada vez más!), además de ser un excelente aliado a la hora de crear aplicaciones profesionales.
Además, al tratarse de un framework escrito en PHP es sencillo ver lo que hay detrás y aprender o incluso aportar código.