Laravel: от версии 5 до наших дней

Laravel не просто изменился. Он повзрослел.

Если вы откроете старый проект на Laravel 5, вы увидите дом с комнатами из разных десятилетий. Он работает, но контроллеры делают слишком много. Middleware устарели. Файлы-хелперы запутаны.

Тем не менее, ядро осталось прежним. Вы по-прежнему используете routes, Eloquent, migrations и Blade.

Laravel не стал другим фреймворком. Он стал зрелой версией той же идеи: предоставить вам чистые настройки по умолчанию и позволить выпускать продукт, не сражаясь с инфраструктурой.

Эволюция мастерства

Laravel 5 был надежным набором инструментов. Он заставил PHP снова ощущаться как серьезную платформу. Он дал вам:

  • Middleware для фильтрации запросов.
  • Form requests для очистки валидации.
  • Jobs и очереди для фоновых задач.
  • Eloquent для выразительных моделей базы данных.

Laravel 6, 7 и 8 были сосредоточены на том, чтобы сделать повседневную работу более плавной.

  • Семантическое версионирование принесло стабильность.
  • Factories упростили создание тестовых данных.
  • Blade-компоненты избавили от дублирования кода.
  • Sanctum упростил аутентификацию API.

Laravel 9 и 10 приняли современный PHP.

  • Вы получили типизированные свойства и улучшенные типы возвращаемых значений.
  • Тестирование стало неотъемлемой частью рабочего процесса.
  • Экосистема расширилась за пределы простого кода.

Современный Laravel — это полноценная мастерская. Она включает в себя развертывание, мониторинг и рабочие процессы с поддержкой ИИ.

Экосистема — это настоящая сила

Laravel — это больше, чем фреймворк. Это целый город сервисов. Вам не нужно всё в первый же день, но вы должны знать об их существовании:

  • Deployment: Forge управляет серверами. Vapor обеспечивает serverless-масштабирование на AWS. Envoyer гарантирует развертывание без простоев.
  • Management: Nova предоставляет премиальные админ-панели.
  • Visibility: Horizon мониторит очереди Redis. Telescope выступает в роли помощника при отладке. Pulse отслеживает производительность.
  • Real-time: Reverb обеспечивает нативную поддержку WebSocket.
  • Core Utilities: Cashier отвечает за биллинг. Scout — за поиск. Sanctum — за аутентификацию API.

Переход от фреймворка к экосистеме

Самое большое изменение — это уровень возможностей. Laravel 5 помогал вам организовать PHP. Современный Laravel помогает вам создавать, развертывать, мониторить, масштабировать и искать.

Это переход от ношения тяжелого рюкзака к использованию хорошо организованной ручной клади. Вы несете меньше лишнего, но сохраняете все возможности.

Советы по обновлению устаревших приложений

Не относитесь к обновлению как к миссии по переписыванию всего с нуля. Относитесь к этому как к ремонту дома, в котором продолжают жить люди.

  • Обновляйте по одной мажорной версии за раз.
  • Используйте тесты для защиты вашей бизнес-логики.
  • Сначала проверьте зависимости ваших пакетов.
  • Читайте руководства по обновлению, а не только списки изменений (release notes).

Скучная инфраструктура — это прекрасно. Это значит, что вы тратите энергию на логику продукта, а не на «прокладку проводов».

Source: https://dev.to/nazar_boyko/laravel-from-version-5-to-today-the-framework-grew-up-with-us-3cil