Laravel
Laravel
Características de Laravel
El framework Laravel trabaja con una arquitectura de carpetas avanzada, de modo que
promueve la separación de los archivos con un orden correcto y definido, que guiará a
todos los integrantes del equipo de trabajo y será un estándar a lo largo de los
distintos proyectos. Por supuesto, dispone también de una arquitectura de clases
también muy adecuada, que promueve la separación del código por responsabilidades.
Su estilo arquitectónico es MVC.
Contiene además un amplio conjunto de características, que sirven para realizar la
mayoría de las aplicaciones web. Entre ellas podemos encontrar:
Un sistema de rutas, mediante las cuales es fácil crear y mantener todo tipo de
URLs amistosas a usuarios y buscadores, rutas de API, etc.
Un sistema de abstracción de base de datos, con un ORM potente pero sencillo
de manejar, mediante el que podemos tratar los datos de la base de datos
como si fueran simples objetos.
Un sistema para creación de colas de trabajo, de modo que es posible enviar
tareas para ejecución en background y aumentar el rendimiento de las
aplicaciones.
Varias configuraciones para envío de email, con proveedores diversos
Un sistema de notificaciones a usuarios, mediante email, base de datos y otros
canales
Una abstracción del sistema de archivos, mediante el cual podemos escribir
datos en proveedores cloud, y por supuesto en el disco del servidor, con el
mismo código.
Gestión de sesiones
Sistema de autenticación, con todo lo necesario como recordatorios de clave,
confirmación de cuentas, recordar un usuario logueado, etc.
La posibilidad de acceder a datos en realtime y recibir notificaciones cuando
éstos se alteran en la base de datos
¿Por qué Laravel se ha convertido en el framework PHP preferido?
Laravel es un framework más nuevo que muchos de sus competidores. Ha venido
desde atrás con una progresión muy fuerte, consolidándose en los últimos años como
el framework PHP más utilizado.
Esta progresión se debe a varios factores. Obviamente, es fundamental la cantidad de
funcionalidad que nos ofrece ya lista, sin embargo este motivo no es el más
importante, dado que muchos otros frameworks ofrecen un soporte también muy
completo. Sí es verdad que la cantidad de módulos ha ido incrementándose
continuamente y a día de hoy es posible que supere a otras alternativas populares,
pero su adopción por parte de la comunidad ha sido muy relevante incluso antes de
ello.
Facilidad de uso: Desde el conocimiento de varios frameworks populares, más o
menos complejos, podemos decir que Laravel es uno de los más sencillos de utilizar.
Existen frameworks tan potentes como Laravel, pero la curva de aprendizaje es
bastante más severa. Esto ha posibilitado que desarrolladores que ya venían utilizando
alternativas más sencillas para el desarrollo de aplicaciones y deseaban pasar a otros
frameworks más completos, han podido acercarse con éxito a Laravel, sin demasiadas
frustraciones por tener que aprender cosas nuevas.
Artisan: Laravel dispone de un potente sistema de comandos de consola para resumir
muchas tareas tediosas y repetitivas. Artisan, la herramienta de línea de comandos de
Laravel ha conseguido que la experiencia de desarrollo con Laravel sea muy atractiva
para las personas que se han decidido por este framework.
Documentación y tutoriales: La documentación de Laravel siempre ha sido muy
completa, además tiene un enfoque bastante didáctico, por lo que resulta muy sencillo
de usar como base para el aprendizaje y no solamente la referencia. Además Laravel
ha venido con una serie de proyectos paralelos de tutoriales adicionales a la
documentación que han ayudado mucho a su divulgación y la creación de una activa
comunidad.
Solidez: Desde las versiones iniciales ha demostrado una gran solidez, lo que ha
permitido que su crecimiento no rompiese de manera radical los proyectos que
necesitaban ser actualizados. Esto ayuda bastante a que sus seguidores sigan
confiando y apoyando las herramientas. A la vez, Laravel ha conseguido adaptarse
desde el inicio con toda una serie de herramientas del mundo del desarrollo actual,
como los proveedores de cloud para almacenamiento de archivos, proveedores de
pagos electrónicos, sistemas de mensajería y email, etc.
Apoyarse en otros productos sin inventar la rueda: Laravel no ha necesitado
reinventar el mundo del desarrollo. En cambio ha sabido aprovechar mucha de la
funcionalidad de productos ya consolidados. El ejemplo más importante es el
framework Symfony, del que se ha extraído cantidad de funcionalidad que ya estaba
muy madura, adoptándola para hacer posible un crecimiento rápido, estable y seguro.
Lo cierto es que cualquier producto que viene desde atrás tiene muchas más
posibilidades de llegar a una fórmula ganadora. Laravel ha conseguido tomar ventaja
de esta situación y llegar a escalar lo suficiente para convertirse en el framework PHP
más popular.
Instalación
En resumen, necesitamos convertir a nuestro equipo en un servidor web, para ellos
básicamente instalamos:
Servidor web: Apache
Lenguaje: PHP.
Base de datos: MySql
Herramientas Importantes
El método de instalación de Laravel es a través de composer, un gestor de paquetes
PHP que provee todo lo que necesitemos respecto a este lenguaje. Puedes instalarlo
desde este enlace https://getcomposer.org/download/
También es muy importante contar con Git, este es nuestro control de versiones de
nuestro software y lo podemos instalar desde su web https://git-scm.com/downloads
Para escribir código necesitaremos a Sublime Text, Visual Studio Code o el editor que
prefieras, en el curso usaremos a Visual Studio Code. Y para observar el resultado
podemos usar a cualquier navegador web, yo usaré Google Chrome.
Resumen
Necesitamos el software necesario para convertir nuestro computador en un servidor
web, en resumen necesitamos:
Lenguaje: PHP >= 7.2.0.
Servidor: Apache
Base de datos: MySql
Composer.
Git.
Editor de código.
Navegador.
Instalación de Laravel
Podemos usar composer directamente o instalar un software llamado "instalador de
Laravel".
Con Laravel Installer sería composer global require laravel/installer.
https://laravel.com/docs/6.x/installation