Top de 10 Razones por las que deberías usar Frameworks en PHP

Los Frameworks en PHP han recibido mucha atención en los ultimos años de parte de la comunidad de desarrolladores web. (Generalmente hablando). Entonces, ¿Porque tanto alboroto?

Si te poner a ver ofertas laborales relacionadas con PHP, verás a menudo algo como "Experiencia en Framework MVC" o similares como uno de los requerimientos. Se esta volviendo en una de esas habilidades que tienes que tener para ser considerado un buen desarrollador web.

Hay algunas buenas razones detrás de todo esto. En este articulo exploraremos porque tu, como programador en PHP, deberías usar frameworks en PHP.

1. Organización de código y de archivos

10 Razones por las que deberías usar un PHP Framework



Solo porque tienes una carpeta llamada "/inc" e hiciste un archivo "funciones.php" no significa que tu código sea organizado.
Cuando instalas un framework para PHP, ya viene con cierta estructura en sus carpetas. Esperando que sigas algunos estandares y mantengas todo organizado de cierta manera.

Una vez te aconstumbres a este modelo, no querras volver atrás.

Desafortunadamente para algunos fans de trabajar en terminal que tal vez usen vi, esto puede convertirse en todo un reto. Necesitaran trabajar con mas archivos, que son mas pequeños en tamaño. Pero cuando usas un editor de código decente o un IDE, será pan comido navegar a través del código de tu aplicación y encontrar lo que necesitas, de manera rápida.

2. Utilidades y Librerias



PHP es un gran lenguaje para desarrollo web y te provee incontable número de herramientas y librerias.

Sin embargo, si intentas construir todo un sitio web con solo PHP, te encontraras en la necesidad de recurrir a código y librerias de terceros o hacerlo por ti mismo.

Todos los frameworks mas usados ya vienen con ciertas librerias y utilidades, que te ayudaran:

Validación de Formularios
Filtración de datos de Entrada/Salida
Abstracción para Bases de Datos
Utilidades para manejar Cookies y Sesiones
E-mail,Calendario,Paginación,etc...

Y la lista sigue. Sin mencionar, que hay amplia cantidad de plugins dados por la comunidad que puedes añadir a tu framework.


PHP


3. Patrón MVC

El famoso Modelo Vista Controlador data de allá en el año 1979, cuando un hombre llamado Trygve Reenskaug (un noruego egresado de ciencias de la computación) lo describio por primera vez.

PHP luce como un motor de plantillas. Sin embargo, cuando es usado irresponsablemente, tiende a darte código mal hecho e inmantenible.

La manera en la que MVC se usa en aplicaciones PHP:

Modelo representa tu estructura de datos, usualmente por interfaces con las bases de datos.
Vistas respresentan el contenido de las plantillas de la página y datos de salida
Controladores gestiona los request de la página y los enlaza.

Este tipo de separación te permite un código mas limpio y mantenible.

4. Seguridad

En PHP puedes encontrar muchas funciones para filtrar datos de entrada y de salida para proteger tu sitio de ciertos ataques.

Sin embargo, usar estas funciones manualmente puede resultar agotador y puedes olvidar limpiar todo de una vez.

Con un framework, la mayoría de este trabajo puede hacerse automaticamente. Por ejemplo en CodeInteger:

Cualquier valor pasado a objetos de bases de datos es filtrado contra inyecciones SQL.
Todas las funciones generadoras de HTML, como las de formularios y URL filtran los datos de salida automaticamente.
Todo dato ingresado por el usuario puede ser filtrado contra XSS.
Encriptar cookies automaticamente es solo cuestión de cambiar una opción de configuración.

5. Menos código y mas desarrollo

Hay que cruzar toda una curva de aprendizaje para cualquier framework en PHP. Pero una vez lo comprendes, disfrutaras los beneficios del desarrollo rápido de aplicaciones.

Escribiras menos código, lo cual significa menos tiempo gastado escribiendo. No tendras que declarar librerias de terceros cada vez para cada nuevo proyecto porque la mayoría de ellas vendrá por default al instalar el framework.

También, desde que eres mas organizado, será mucho mas rápido detectar bugs, mantener el código y hacer cambios al código ya existente.

6. Soporte de la comunidad

utilidades


Todos los grandes Frameworks de PHP tienen grandes y activas comunidades detrás de ellos. Puedes hablar con otros desarrolladores, obtener ayuda, feedbacks y a demás dar tu ayuda a la comunidad.

Hay foros y listas de mails, puedes aprender también con tan solo navegar a tráves de los foros y observando sobre lo que otros estan distutiendo.

7. Oportunidades de Empleo

¿Has visto las ofertas de trabajo para PHP últimamente? La mayoría de ellos requieren experiencia o con un framework o con un CMS. Sigue la demanda.
Ejemplo de carreerbuilder.com

framework


Experiencias con frameworks de PHP incrementan considerablemente tu nivel de calificación para un trabajo como desarrollador web.

8. Herramientas de Performance

Uno de los principales argumentos de los pesimistas vienen en este aspecto. Es obvio que hay un gran punto de diferencia entre hacer un "Hola Mundo" con PHP plano a hacerlo con un framework en cuestión de performance.

Pero tomar eso como referencia es solo un mal ejemplo. Primero que todo, debes entender que los desarrolladores son mas costosos que los servidores. Ahorrar tiempo de desarrollo y mantenimiento podría prevalecer sobre cualquier dinero extra que se necesite para gastar en servidores.

Poniendo todo eso de lado, puedes ganar muchos beneficios en cuestiones de performance solo por usar un framework en PHP. Vienen con herramientas que te ayudan con el caché, paginación,etc..

Los frameworks modernos también vienen con carga dinamica, que solo carga lo que necesites.
Diferentes requests de páginas pueden cargar diferente cantidad de código de librerias basado especificamente en lo que necesites.

9. Aplicable para trabajar en equipo

La manera en la que tu proyecto este organizado con un framework en PHP también te ayuda a crear un entorno agradable para un equipo de trabajo.

Puedes dejar a los desarrolladores trabajar en las Vistas, que los gurus de las bases de datos trabajen en los Modelos y dejar al inteligente programador (tu ) para construir Librerias reutilizables, plugins,etc..
También puedes hacer algunas pruebas unitarias, porque el framework viene con herramientas para eso también.

10. Y Es Divertido!

Este puede ser el punto mas importante de todos. Cuando te diviertes haciendo tu trabajo, serás mas productivo y feliz en general.

Si tu has estado programando el viejo código plano en PHP por años, y te estas aburriendo de el, empezar con un Framework puede darte esa crucial moral que has estado necesitando.

Es como tener un nuevo juguete, y poder constuir excelentes nuevas cosas con el. Al menos así es como me senti cuando comencé con los Frameworks. Estoy seguiro de que muchos de los desarrolladores web han tenido experiencias similares.

Conclusión
Usar un framework en PHP puede o no ser la mejor elección para ti. Sin embargo, deberías siempre tener una mente abierta y mantenerte actualizado con todos los nuevos desarrollos en el mundo del desarrollo web.

Los frameworks son geniales y son definitivamente lo de hoy, no puedo decirte lo que el día de mañana nos traera . Lo único que tengo que decir es que definitivamente vale la pena averiguarlo.


PD: La traducción es totalmente hecha por mi de la fuente que aclaro.