Para muchos, Laravel fue el framework que le devolvió la vida a PHP. Con una estructura sólida y una sintaxis expresiva, la creación de Taylor Otwell le ha dado una bocanada de aire fresco a uno de los lenguajes de programación con más historia (y detractores) del mundo.
¿Que es un framework?
Un framework o marco de trabajo es un esquema básico para la construcción de piezas de software. Dentro de las ventajas que estos ofrecen, se encuentra la utilización de buenas prácticas, una buena estructuración de los proyectos, y simplificarnos enormemente la construcción de soluciones complejas.
¿Qué es Laravel?
Sus propios creadores lo definen como «El framework PHP para artesanos web». Es, básicamente, un framework de código abierto para el desarrollo de aplicaciones y servicios web para PHP en sus versiones 5 y 7.
La Historia de Laravel
Laravel 1, 2 y 3
Laravel fue lanzado oficialmente el 9 de junio de 2011 con el objetivo de permitir el desarrollo de aplicaciones PHP de una manera más fluida, elegante y simple, utilizando las mejores prácticas y estándares.
Gran parte de la estructura de ese primitivo Laravel estaba basada en Symfony y ya contaba, en aquel entonces, con un ORM propio llamado Eloquent, un sistema de ruteo basado en closures inspirado de Ruby y Sinatra, y muchas de las herramientas con las que este framework cuenta hoy en día como validaciones, helpers, autenticación, etc.
Para febrero de 2012, Laravel se encontraba ya en su versión 3 e incluía test unitarios, controladores, un contenedor para inversión de control, además de mejoras en Eloquent que le permitían el uso de relaciones y migraciones.
Laravel 4
Sin embargo, sus cambios más significativos vendrían con la versión 4, en la cual su creador Taylor Otwell, decidiría reescribir todo el código para que el mismo fuese manejado como un conjunto de componentes, agrupados bajo el nombre de Illuminate.
Esto fue posible gracias a la aparición de Composer, un gestor de dependencias que en aquel entonces ya se vislumbraba como un futuro estándar para PHP.
Laravel 4 fue lanzado oficialmente en mayo de 2013, ahora con una estructura renovada y múltiples mejoras como la posibilidad de crear seeders para nuestras bases de datos y el uso de facades.
Laravel 5
Lanzado en febrero de 2015, Laravel 5 presentó una estructura de directorios renovada, la eliminación de los helpers para formularios y HTML, una serie de nuevas vistas, Socialite para la autenticación a través redes sociales, Elixir para la compilación de assets, Scheduler para simplificar el uso de cron, .env para una gestión de entorno simplificada, los form requests y un REPL nuevo (read–evaluate–print loop).
Laravel 6
El 2019 vio la aparición de la nueva versión de Laravel, la cual cambió su sistema de versionado a uno semántico, siguiendo la estructura de major.minor.patch. Esto supone un salto mas acelerado en el numero de versiones de lo que anteriormente nos tenia acostumbrado este framework.
Por otro lado, esta versión cuenta con soporte extendido (LTS) de 2 años para bugs y 3 años para parches de seguridad.
La sexta versión cuenta con una gran cantidad de mejoras y cambios, entre las que podemos mencionar Ignition, una nueva página para el seguimiento de errores y excepciones que brinda una información mas detallada y precisa, las Lazy Collections que permiten un ahorro drástico de memoria a la hora de recorrer conjuntos de datos de gran volumen, dado que realizan la carga de una pequeña parte de los mismos cada vez y Laravel UI, el cual extrae el clásico scaffolding frontend a un paquete separado, permitiéndonos elegir la tecnología a utilizar del lado del cliente. Con esto, ya no tendremos código Vue ni Bootstrap en nuestro proyecto.
Laravel 7
La séptima versión fue lanzada en marzo de 2020 y sigue la linea de implementar grandes cambios con relación a la versión anterior. En esta oportunidad, podremos encontrar la presencia de componentes en Blade, los cuales podremos asociar a clases muy fácilmente, además de la posibilidad de crear nuestros propios casteos en Eloquent y un cliente HTTP propio basado en el popular paquete Guzzle.
¿Para que sirve Laravel?
Laravel, al igual que la mayoría de los frameworks nos facilitará el desarrollo de soluciones desde cero, partiendo de una estructura básica que nos organizará y nos permitirá «arrancar con el pie derecho». Sin embargo, utilizarlo indiscriminadamente en cada proyecto puede llevarnos a caer en una sobre-ingeniería. Por ello, es necesario estimar bien el alcance de la soluciones que debemos construir, partiendo de un diseño adecuado y teniendo siempre en mente que las herramientas deben facilitarnos nuestro trabajo y no entorpecerlo.
Algunos escenarios típicos en los cuales podemos utilizar Laravel son:
- Un CMS (como WordPress) no cubre nuestras necesidades como aplicación web.
- Necesitamos de un desarrollo a medida ágil, seguro y con una fácil escalabilidad y mantenimiento.
- Si además de necesitar una solución web, esta tiene que estar integrada con otras aplicaciones
- Debemos construir una API-REST
¿Cómo funciona Laravel?
Laravel cuenta con una estructura bien definida de componentes que cumplen una función específica dentro de nuestro proyecto. Algunos de ellos son:
- Modelos: Son clases que representan nuestros datos, los cuales pueden provenir de una base de datos, un API, etc.
- Controladores: Son un mecanismo que nos permite agrupar la lógica de peticiones HTTP relacionadas y de esta forma organizar mejor nuestro código.
- Blade: Es el motor de plantillas para la creación de vistas en Laravel. Nos permitirá crear contenido dinámico consumiendo los datos de nuestra aplicación, combinarlo con código PHP y procesarlo para mostrárselo al usuario.
- Routing: Laravel proporciona un sistema de organización y gestión de rutas que nos permite controlar de manera exhaustiva las rutas de nuestro sistema.
- Middleware: Los middleware, son funciones que nos permiten agregar filtros a cada petición HTTP realizada por un usuario en una aplicación. La finalidad de este componente es disminuir la carga de trabajo en los controladores y proporcionar una solución mucho más simple y estándar a la hora de aplicar las restricciones necesarias en el proyecto.
- Eloquent: Es un ORM incluido en Laravel que nos permitirá manipular nuestra base de datos a través de modelos, haciendo de las tareas de inserción, consulta, edición y eliminación de datos una tarea sencilla y eficiente.
¿Laravel es MVC?
Mucho se discute sobre si Laravel es un framework que sigue el patrón arquitectónico de Modelo-Vista-Controlador (MVC), el cual ha tenido un auge muy importante desde principios de los 80′. Sin embargo, el mismo Taylor Otwell se ha encargado de aclarar esto. Laravel no es un framework MVC, al menos no en un sentido estricto. Lo cierto es que la complejidad de este tipo de frameworks exceden lo que esas tres letras pueden representar.
Una aplicación actual tiene requerimientos estructurales de robustez y seguridad que hacen necesario que contemos con algo más que tres piezas para construirla.
¿Qué es Artisan en Laravel?
Artisan es el nombre de la interfaz de línea de comandos incluida en Laravel. Provee comandos útiles para el desarrollo de una aplicación y está impulsada por el poderoso componente Console de Symfony.
1 reply on “ ¿Laravel qué es? ”