Laravel 7 llega con mejoras en velocidad, componentes y más
El equipo de desarrollo de Laravel dio a conocer hace poco el lanzamiento de la nueva versión 7 de su framework PHP unos meses después del lanzamiento de Laravel 6.
Esta es una nueva versión importante del framework con muchas características nuevas, incluyendo Laravel Airlock, mejoras en la velocidad de enrutamiento, etiquetas de componentes Blade, conversión Eloquent personalizada, cliente centrado en el desarrollador HTTP, soporte CORS y muchas cosas más.
¿Que hay de nuevo en Laravel 7?
Esta nueva versión del framework presenta una nueva caracteristica bastante interesante la cual tiene como nombre “Laravel Airlock” la cual proporciona un sistema de autenticación ultraligero para SPA (aplicación de una sola página), aplicaciones móviles y API simples basadas en tokens.
Básicamente lo que permite Airlock a cada usuario, es en su aplicación generar múltiples tokens API para su cuenta. A estas fichas se les pueden asignar habilidades/escalas que especifican las acciones que las fichas pueden realizar.
Por otra parte Blade Component se han revisado para permitir la representación basada en etiquetas, la gestión de atributos, las clases de componentes, los componentes de vista en línea, etc. Según el equipo de desarrollo, este rediseño de los componentes Blade es muy importante. Como tal, debe consultar la documentación completa sobre los componentes de Blade para obtener más información sobre esta función.
Tambien podremos encontrar en esta nueva versión de Laravel 7 una API mínima y expresiva en torno al cliente HTTP Guzzle, lo que permite realizar rápidamente solicitudes HTTP salientes para comunicarse con otras aplicaciones web. La envoltura de Laravel alrededor de Guzzle se centra en los casos de uso más comunes y una experiencia de desarrollo agradable.
Ademas se incluye un nuevo método para hacer coincidir las rutas compiladas y en caché que se han almacenado en caché. En aplicaciones grandes (por ejemplo, aplicaciones con 800 o más rutas), estas mejoras pueden conducir a una mejora en la velocidad, que es aproximadamente el doble del número de solicitudes por segundo en un punto de referencia simple “Hello World”. No necesita realizar ningún cambio en su aplicación.
La clase Illuminate de Laravel ofrece una variedad de funciones útiles para manejar cadenas de caracteres. Laravel 7 ahora ofrece una biblioteca de manejo de personajes más orientada a objetos y más fluida, además de estas funciones.
En versiones anteriores de Laravel, la cola de la base de datos no se consideraba lo suficientemente robusta para su uso en producción, debido a puntos muertos.
Sin embargo, Laravel 7 realiza mejoras en las aplicaciones que usan MySQL 8+ como una cola de base de datos. Usando la cláusula FOR UPDATE SKIP LOCKED y otras mejoras de SQL, el controlador de base de datos ahora se puede usar de forma segura en aplicaciones de producción de mayor volumen.
Otro cambio importante es que ahora ya se permite la configuración de múltiples “mailers” para una sola aplicación.
Cada aplicación de correo configurada dentro del archivo de configuración puede tener sus propias opciones e incluso su propio “transporte” único, lo que permite a su aplicación utilizar diferentes servicios de correo electrónico para enviar ciertos mensajes de correo electrónico.
Por defecto, Laravel usará el programa de correo configurado como el programa de correo en su archivo de configuración.
Mientras que la plantilla de correo de Markdown predeterminada ha recibido un diseño nuevo y más moderno basado en la paleta de colores Tailwind CSS. Por supuesto, esta plantilla se puede publicar y personalizar según las necesidades del usuario.
Por ejemplo, la aplicación podría usar el matasellos para enviar correo transaccional mientras usa Amazon SES para enviar correo masivo.
Finalmente y no menos importante, es el nuevo soporte de primera parte para configurar respuestas de solicitud de intercambio de recursos de origen cruzado (CORS) mediante la integración del popular paquete Laravel CORS.
Laravel 7 incluye una gran cantidad de cambios, los cuales puedes conocer sus detalles y demás información en la publicación del lanzamiento, asi como tambien los enlaces para obtener la nueva versión.