Laravel 10: 9 características que debes conocer


Guadalupe

16 Feb 2023

Después de más de una década desde la introducción del framework Laravel, ¿alguna vez te has preguntado: ¿Qué más puede ofrecer esta aplicación a los desarrolladores de PHP? Este framework ha simplificado las tareas tanto para los desarrolladores principiantes como profesionales, por ello cada vez son más las personas que quieren aprender Laravel desde cero.

Entonces, ¿Laravel todavía tiene más sorpresas reservadas para los desarrolladores? ¿O ha agotado todos los medios posibles para apoyar a estos profesionales de PHP? Bueno, al menos sabemos que Laravel 10 tiene mucho que ofrecer. ¡Así es! Laravel ya tiene una nueva versión. A continuación, te explicaremos sus nuevas actualizaciones y características. ¡Empecemos!

 

Características de Laravel 10

No hay duda de que la parte más emocionante de cualquier nueva versión es la adición de innovadoras características. Por tanto, sin más preámbulos, empecemos por ver las nuevas actualizaciones y características en Laravel 10.

 

#1 Nuevo comando Artisan para generar modelos

Artisan, la interfaz de línea de comandos incluida con Laravel, se ha vuelto más interactiva con el tiempo. A partir de Laravel 6, Artisan añadió características interactivas a la línea de comandos que la hacen más amigable y fácil de usar. Por ejemplo, al ejecutar ciertos comandos, se te puede solicitar que respondas preguntas o selecciones en una interfaz basada en menús.

Esto hace que sea más rápido y más conveniente para ejecutar tareas comunes y reduce la probabilidad de errores tipográficos o errores en la línea de comandos. Escribe php artisan make:model y haz click en enter. Te preguntará "¿cómo debe llamarse el modelo?", y ahora necesitas ingresar el nombre del modelo y elegir un número entre 0 a 7.

Te puede interesar: Conoce la actualización de Laravel con Vite

 

#2 Regla de Validación Invocable

En PHP, un objeto "invocable" es aquel que puede llamarse como una función. Esto se consigue implementando el método mágico “invoke" en la definición de la clase del objeto. El método invoke es llamado automáticamente cuando un objeto es usado en un contexto donde se espera una llamada a una función, como con el operador ().

Cuando un objeto con un método invoke es llamado como una función, PHP ejecutará automáticamente el código dentro del método invoke. La ventaja de utilizar objetos invocables es que permiten definir objetos que pueden ejecutarse como si fueran funciones, lo que facilita la creación de código flexible, reutilizable y componible.

 

#3 Eliminación de los dockblocks

"DocBlocks" en Laravel se refieren a comentarios especialmente formateados que proporcionan metadatos sobre el código que están documentando. Estos se utilizan de forma amplia en PHP para documentar funciones, clases, propiedades y parámetros de métodos, entre otras cosas.

 

#4 PHP 8.1 o superior

php 8 1 laravel

Laravel 10 abandonó el soporte para PHP 8 porque era una nueva versión de PHP que fue lanzada después de que Laravel 10 ya estuviera en desarrollo. Laravel está construido sobre PHP y debe ser compatible con la versión de PHP. Cuando una nueva versión es liberada, puede introducir cambios que pueden romper la compatibilidad con Laravel u otras.

Para soportar una nueva versión de PHP, los desarrolladores de Laravel deben probar el framework y sus componentes para asegurar la compatibilidad y solucionar cualquier problema que se encuentre.

 

#5 Predis v2

Predis es una librería cliente de PHP para Redis, un almacén de estructuras de datos en memoria usado como base de datos, caché y agente de mensajes. En Laravel, Predis se utiliza como cliente Redis para conectarse e interactuar con un servidor Redis. Con este se puede realizar varias operaciones, como obtener y establecer valores, gestionar listas, conjuntos y más.

Predis v1 es la primera versión y fue ampliamente utilizada en aplicaciones Laravel. Predis v2 es la segunda versión y se introdujo con Laravel 6. Este incluye varias mejoras sobre Predis v1, incluyendo soporte para las últimas características de Redis, rendimiento mejorado y una API más robusta.

 

#6 Eliminado de dispatchNow

Sí, el método dispatchNow ha sido eliminado de Laravel 10. En versiones anteriores, este método se utilizaba para enviar un trabajo y ejecutarlo inmediatamente, saltándose el sistema de colas. Sin embargo, en Laravel 10, este método ha sido eliminado, y la forma recomendada para ejecutar un trabajo de inmediato es utilizar el controlador de cola de sincronización.

Utilizando el controlador de cola de sincronización, puedes asegurarte de que tu trabajo se ejecutará inmediatamente, sin ser añadido al sistema de colas. Esto puede ser útil en ciertas situaciones en las que necesitas realizar una tarea rápido y no puedes esperar a que sea procesada por la cola.

 

#7 No es necesario instalar el paquete doctrine/dbal

En Laravel 10, el paquete doctrine/dbal ya no es una dependencia necesaria, y no es necesario instalarlo. El paquete doctrine/dbal es una capa de abstracción de base de datos que proporciona una manera simple y conveniente de interactuar con bases de datos, incluyendo soporte para varios sistemas de bases de datos como MySQL, PostgreSQL y SQLite.

En versiones anteriores de Laravel, este paquete se utilizaba como el constructor de consultas de base de datos por defecto y era necesario instalarlo para poder utilizar el constructor de consultas de Laravel. Sin embargo, en Laravel 10, el constructor de consultas ha sido reescrito para utilizar una implementación más eficiente y flexible, y el paquete doctrine/dbal ya no es necesario.

Esto significa que ahora puedes utilizar el constructor de consultas de Laravel sin tener que instalar el paquete doctrine/dbal, lo que hace más fácil empezar y reduce la complejidad general del framework.

 

#8 Varias propiedades y métodos eliminados

nueva version laravel

Como parte del proceso de mejora y evolución del framework Laravel, el equipo de desarrollo de Laravel elimina periódicamente los métodos y propiedades obsoletos que ya no son necesarios o que han sido sustituidos por alternativas nuevas y mejores..

En Laravel 10, se han eliminado muchos métodos y propiedades obsoletos, y tendrás que actualizar tu código para utilizar los métodos o propiedades alternativos recomendados. La documentación de Laravel proporciona una lista completa de todos los cambios y desaprobaciones en cada versión de Laravel, para que puedas comprobar fácilmente qué métodos o propiedades se han eliminado y qué necesitas hacer para actualizar tu código.

Te puede interesar: Laravel tips: 4 formas de optimizar el rendimiento de la aplicación Laravel

 

#9 Eliminación de Route::home

En versiones anteriores de Laravel, el método route::home se utilizaba para generar una URL para la página de inicio de la aplicación. En Laravel 10, es necesario utilizar un método diferente para generar la URL de la página de inicio.

Este cambio ayuda a hacer el código más flexible y mantenible, ya que puedes usar la ruta con nombre para cambiar la URL de la página de inicio si es necesario, sin afectar al resto de la aplicación.

Como ves, la versión de Laravel 10 trae varias nuevas características que hacen que sea más fácil, más rápido y más eficiente para desarrollar aplicaciones web. Tanto si eres un desarrollador experimentado como si acabas de empezar, esta última versión seguramente llevará tus habilidades de desarrollo al siguiente nivel. Entonces, ¿qué esperas para utilizarlo? ¡Anímate a intentarlo!

¿Te gustaría aprender a programar? En Coders Free contamos con diversos cursos online con todos los niveles de programación, así como servicios de diseño gráfico para hacer crecer tu negocio. ¡Contáctanos para obtener más información!


2 comentarios

Inicia sesión para comentar

Comentarios:

  • Ing. Alexander Barajas

    Ing. Alexander Barajas hace 1 año

    Victor buenos días, sigo tu curso de Laravel 10, estoy haciendo deploy en un servidor compartido (anteriormente hacer esto era sencillo) ahora tengo un problema en cuanto a que funciona todo pero no se renderizan bien los componentes, de hecho es como si no tomará los CSS, Que puedo hacer al respecto? tendra algo que ver que sea vite quien renderiza? ya le corri npm run build y aún así no pasa nada. Agradecería tu ayuda o la de la comunidad al respecto.

  • Cristian Cguzman

    Cristian Cguzman hace 1 año

    Gracias por la información.