Laravel 12, выпущенный 24 февраля 2025 года, представляет собой значительное обновление популярного PHP-фреймворка, направленное на улучшение разработки веб-приложений. В этой статье мы рассмотрим ключевые изменения и нововведения, представленные в этой версии.
Новые стартовые наборы: современный подход к разработке
Одним из наиболее заметных изменений в Laravel 12 является введение новых стартовых наборов (starter kits) для React, Vue и Livewire, заменяющих устаревшие Breeze и Jetstream. Эти наборы обеспечивают современную и гибкую основу для разработки веб-приложений с использованием популярных фронтенд-технологий.React Starter Kit: основан на Inertia, React 19, TypeScript, Tailwind CSS и компонентах shadcn. Он идеально подходит для создания современных одностраничных приложений (SPA) с использованием React.
Vue Starter Kit: построен с использованием Inertia, Vue 3, TypeScript, Tailwind CSS и компонентов shadcn-vue. Этот набор предоставляет мощную и типобезопасную основу для разработчиков, предпочитающих Vue.
Livewire Starter Kit: предназначен для тех, кто использует Livewire и Blade, обеспечивая плавную интеграцию с Tailwind CSS и компонентами shadcn. Он упрощает создание интерактивных пользовательских интерфейсов без необходимости в обширном написании JavaScript-кода.
Эти новые стартовые наборы обеспечивают быструю и эффективную настройку проектов, позволяя разработчикам сосредоточиться на создании функциональности, а не на начальной конфигурации.
Улучшенная работа с API: поддержка GraphQL и версионирование
Laravel 12 значительно улучшает разработку API, вводя нативную поддержку GraphQL и новую систему версионирования API. Эти обновления упрощают управление API и облегчают создание масштабируемых и высокопроизводительных приложений.Поддержка GraphQL: позволяет разработчикам запрашивать только необходимые данные, уменьшая размер передаваемых данных и улучшая время отклика. Вместо множества REST-эндпоинтов, один запрос GraphQL может получить точные и структурированные данные, повышая эффективность API-вызовов.
Версионирование API: переработано для лучшей организации. Ранее версии API указывались вручную в маршрутах, что приводило к загромождению файлов маршрутов. Теперь, с новым подходом, маршруты API структурированы и масштабируемы, что облегчает поддержку нескольких версий API без избыточного дублирования.
Эти улучшения делают разработку API более эффективной, укрепляя позиции Laravel 12 как предпочтительного фреймворка для создания высокопроизводительных и хорошо организованных API.
AI-помощник для отладки: интеллектуальный подход к решению проблем
Laravel 12 представляет AI-помощника для отладки, который помогает разработчикам быстрее выявлять и устранять проблемы. Вместо использования традиционных методов отладки, таких какdd()
или dump()
, новый метод debug()
предоставляет информацию в реальном времени и предлагает возможные решения.Пример использования:
debug:
debug($variable)->suggest();
Этот подход ускоряет процесс отладки и повышает производительность разработки, позволяя быстрее находить и исправлять ошибки.
Прочие улучшения и изменения
- Удаление поддержки Carbon 2: Laravel 12 теперь требует использования Carbon 3, обеспечивая более современные и эффективные методы работы с датами и временем.
- Обновление Laravel Installer: необходимо обновить Laravel Installer для поддержки Laravel 12 и новых стартовых наборов.
- Метод
Concurrency::run
: теперь при вызове с ассоциативным массивом возвращает результаты операций вместе с соответствующими ключами, улучшая управление параллельными задачами. - Метод
$request->mergeIfMissing()
: теперь позволяет объединять вложенные массивы данных с использованием нотации «точка», что упрощает работу с вложенными данными в запросах.