Es oficial, ya se encuentra disponible la nueva versión de Laravel 11 disponible para la descarga. Como les comente en el post anterior sobre las novedades de Laravel 11 (Laravel 11: Todo lo que sabemos del framework hasta la fecha – Latirus), la fecha de lanzamiento prevista era para mediados de Marzo del 2024. Trataremos de mostrarte algunas de las novedades más importantes.
Nueva Versión de PHP
Ahora la versión mínima necesaria para correr un proyecto en Laravel 11, es de PHP 8.2. Es decir, que con este cambio todas las versiones anteriores de PHP no van a ser utilizadas para desarrollar aplicaciones en Laravel.
Nueva Estructura de Archivos
El cambio más destacado para Laravel 11 es la estructura de carpetas de la aplicación en donde fue simplificado para una mejor administración de archivos.
Cuando instalas un nuevo proyecto de Laravel, la disposición de carpetas se verá de esta manera:
app/
├── Http/
│ └── Controllers/
│ └── Controller.php
├── Models/
│ └── User.php
└── Providers/
└── AppServiceProvider.php
bootstrap/
├── app.php
└── providers.php
config
...
OBSERVACIÓN: Estos cambios en la estructura son OPCIONALES. Serán el predeterminado solo para NUEVOS proyectos. Las aplicaciones antiguas de Laravel pueden mantener la estructura anterior.
Carpetas eliminadas: app/Console, app/Exceptions, app/Http/Middleware.
Las rutas, los middlewares y las excepciones ahora se registran en el archivo bootstrap/app.php.
use Illuminate\Foundation\Application;use Illuminate\Foundation\Configuration\Exceptions;use Illuminate\Foundation\Configuration\Middleware; return Application::configure(basePath: dirname(__DIR__)) ->withRouting( web: __DIR__.'/../routes/web.php', commands: __DIR__.'/../routes/console.php', health: '/up', ) ->withMiddleware(function (Middleware $middleware) { // }) ->withExceptions(function (Exceptions $exceptions) { // })->create();
Además, se ha optimizado la carpeta de rutas. Se han eliminado los archivos routes/channel.php, routes/console.php y routes/api.php.
Podés ver más información de la estructura de las carpetas en el siguiente enlace:
Todo lo que tenés que saber sobre los directorios en Laravel 11 – Latirus
Nuevos Comandos make para simplificar la creación
Una de las novedades de Laravel 11 es la creación de nuevos comandos artisan para crear clases, interfaces y enum.
php artisan make:enum
php artisan make:class
php artisan make:interface
Como Instalar Laravel 11?
La manera más fácil de instalar Laravel 11 es a través de composer o del instalador oficial de Laravel al igual que sus predecesores Laravel 10 y 9.
composer global require laravel/installer
y luego:
laravel new nombre_del_proyecto_en_laravel_11