Los motivos para utilizar un Framework en PHP

Aunque programar en PHP es relativamente sencillo hoy en día con entornos que nos facilitan mucho la vida, existen multitud de frameworks en este lenguaje, como Symfony, Laravel, o CakePHP, entre muchos otros. Entonces, ¿Cual es la razón de que debamos utilizar uno de ellos? A continuación os mostramos algunos de los motivos más importantes:

Nos evita escribir el código repetido

La mayor parte de los proyectos web necesitan un grupo de funcionalidades común a todos ellos, como por ejemplo, el acceso a base de datos, la validación de formularios o la seguridad. Escribir el código que resuelve esas partes para cada proyecto no es muy buena idea, además de aburrido y difícil de mantener en futuras evoluciones de la aplicación web.
Un framework incluye multitud de funcionalidades por defecto y contemplan la ampliación de manera modular, es decir, que puedes ampliarlo sin modificarlo directamente. Entenderás que esto te facilitará el mantenimiento y despliegue de dichas funcionalidades en otros proyectos.

Aseguras fallos de seguridad

Recurrir a un framework tiene varias consecuencias, como que sabes que la herramienta va a estar bien hecha y que te abstrae de cometer errores a bajo nivel, como errores que permitan ataques contra la base de datos (por ejemplo inyección SQL).

Utilizan buenas prácticas

Normalmente, los frameworks utilizan y animan a sus usuarios a utilizar prácticas de desarrollo que se consideran buenas, como separar la lógica (en nuestro caso PHP), los datos, la estructura (HTML) y la presentación (CSS). La mayoría de frameworks están basados en patrones de diseño, principalmente MVC (Modelo Vista Controlador).
Evidentemente, si no conoces estos patrones te costará utilizar el framework, pero cualquier buen programador debería conocerlos, y si no los conoce no le será muy difícil comprenderlos y aplicarlos. Con la ventaja de que, en un framework, ya están implementados, tú sólo tienes que utilizarlos.

Ofrecen una estructura base común

Una de las cosas que más a menudo están infravaloradas, es la utilización de una estructura base común a los proyectos. Si el código que copias cuando inicias un proyecto es distinto en cada uno, en este punto no vas bien. Los frameworks ofrecen una base común que puedes utilizar en todos los proyectos. Ya hablamos de esto en el primer punto, pero ahora va más allá. Al tener un código y estructura común, todos los proyectos se desarrollan con los mismos principios y de la misma forma.

Hacen cosas avanzadas que tú no harías

Tu software no puede utilizar URLs optimizadas sin trucos extraños de htaccess, que además dependen de que se ejecute en Apache. Tu software no te permite desarrollar una API REST sobre ese mismo código sin modificar la mitad del mismo. Para traducir tu aplicación tienes que tener tablas de 50.000 registros, o hacer guarradas con tu software. Un framework contempla todo eso, y lo hace de forma elegante.