Comparte en Facebook Twitter Google+

laravel-lumen

Cuando los programadores de PHP comenzamos a vagar por la faz de Internet, no existían frameworks y cada quien se las arreglaba como podía. Luego con el lanzamiento de frameworks como Ruby on Rails, comenzaron a desarrollarse y popularizarse frameworks para PHP.

Sin embargo, hay algunos proyectos que no necesitan toda la estructura de un framework como Laravel o Symfony, ya sea porque son muy sencillos, tienen características muy específicas, o requieren de una velocidad de ejecución extrema.

Por ende surgió la necesidad de disponer de micro-frameworks, es decir versiones mucho más ligeras de los frameworks que ya conocemos.

El universo de PHP ya contaba con algunos como Silex (de los creadores de Symfony) y Slim, sin embargo no disponíamos de una versión “super liviana” de Laravel. Hasta hoy, que fue anunciado Lumen:

¿Qué es Lumen?

Lumen es un micro-framework para PHP creado por Taylor Otwell que comparte muchos de los componentes de su “hermano mayor” Laravel, pero Lumen es una versión más liviana de Laravel y orientado más a la creación de APIs y microservicios, aunque también puedes usarlo para crear sitios web o lo que quieras.

A diferencia de Laravel PHP, archivos y componentes no vienen por defecto en Lumen (como por ejemplo la integración con Bootstrap y los módulos preestablecidos de autenticación y registro) pero sí puedes usar el ORM Eloquent y otros importantes componentes de Laravel en Lumen.

¿Qué significa el nombre del framework Lumen?

Es una “especie” de diminutivo de Illuminate (el nombre clave de los componentes de Laravel 4 y 5)

¿Debería usar Laravel o Lumen?

Si estás planeando desarrollar tu próximo sitio o portal web, y necesitas un CMS, un panel administrativo, un CRM, un foro o sistemas de ese tipo, Laravel es “the way to go”,  pero si sólo quieres crear un API para tu SPA (aplicación de una sola página) construida con Angular o EmberJS, o quieres implementar un microservice, usar Lumen es una buena opción.

Por otro lado, con Lumen puedes construir cualquier tipo de proyecto, así que si nunca has usado ningún framework y te “intimida” comenzar con Laravel, quizás Lumen sea una buena opción para ti

¿Qué es un microservice?

Son procesos independientes que generalmente se encargan de una sola tarea (por ejemplo un cron-job para hacer un respaldo de la base de datos) y están por lo general desacoplados del resto de la aplicación.

¿Es posible migrar de Lumen a Laravel?

¡Sí! Lumen está construido usando los componentes de Laravel (como Fluent y Eloquent por ejemplo) así que en teoría debería ser fácil pasar una aplicación de Lumen a Laravel (esto es una gran ventaja y diferencia con respecto a otros micro frameworks de PHP).

Ok, muy bien pero: ¿Cómo puedo instalar y comenzar a usar Lumen?

¡Haces muy buenas preguntas! Imagino que ya tienes Composer instalado (sino, te enseñamos cómo instalarlo en Ubuntu o en Windows)

Pues bien, simplemente ejecuta este comando en la consola:

Espera unos minutos y ¡Listo! Ahora sólo necesitas crear un Virtual Host (te explicamos cómo para Windows o Linux y Mac) que apunte a NOMBRE_DE_TU_PROYECTO/public (no olvides la carpeta public) y el paso siguiente es probarlo en tu navegador.

¿No necesitas un virtual host? Entonces simplemente ve a la carpeta de tu proyecto y escribe:

Verás la lista de comandos de Lumen, que funcionan como en Laravel 5, sweet!

¿Cómo comienzo a desarrollar mi API en Lumen?

Simplemente ve al archivo app/Http/routes.php tal como en Laravel, and you are good to go:

Por supuesto no olvides visitar la documentación oficial de Lumen.

Por último, ¿Te interesa aprender más sobre Lumen? Cuéntanos en los comentarios, mándame un Tweet y por supuesto no olvides suscribirte al sitio.

Aprende PHP, Laravel y más por sólo 999 al mes: ver planes.

Lección siguiente ¡Excelente! Lumen 5.2 ya está aquí