Laravel

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Laravel
LaravelLogo.png
Тип

Программный каркас для создания веб-приложений

Разработчик

Taylor Otwell

Написана на

PHP

Операционная система

Кроссплатформенный

Первый выпуск

2011-06-11

Последняя версия

5.4.17 (2017-04-10; 75 дней тому назад)

Состояние

Актуально

Лицензия

MIT

Сайт

laravel.com

Commons-logo.svg Laravel на Викискладе

Laravel — бесплатный веб-фреймворк с открытым кодом, предназначенный для разработки с использованием архитектурной модели MVC (англ. Model View Controller — модель-представление-контроллер). Laravel выпущен под лицензией MIT. Исходный код проекта размещается на GitHub[1].

В результате опроса sitepoint.com в декабре 2013 года о самых популярных PHP-фреймворках Laravel занял место самого многообещающего проекта на 2014 год[2].

В 2015 году в результате опроса sitepoint.com по использованию PHP-фреймворков среди программистов занял первое место в номинациях:

  • Фреймворк корпоративного уровня
  • Фреймворк для личных проектов

История[править | править вики-текст]

Laravel был создан Taylor Otwell как более функциональная альтернатива CodeIgniter, который не предусматривал различные дополнительные функции. Первый бета-релиз Laravel стал доступен 9 июня 2011 года, а Laravel 1 вышел в этом же месяце. Laravel 1 включает в себя встроенную поддержку для аутентификации, локализации, модели, представления, сессий, маршрутизации и других механизмов.

Laravel 2 был выпущен в сентябре 2011 года. Основные новые функции включают в себя поддержку контроллеров, которые сделали фреймворк полностью MVC-совместимым, встроенную поддержку для инверсии управления и систему шаблонов Blade.

Laravel 3 был выпущен в феврале 2012 года с набором новых функций, включая интерфейс командной строки (CLI) под именем "Artisan", встроенную поддержку нескольких систем управления базами данных, миграции баз данных в виде контроля версий, обработку событий. Выпуск Laravel 3 получил значительное увеличение числа пользователей, что повлияло на его популярность.

Возможности[править | править вики-текст]

Ключевые особенности, лежащие в основе архитектуры Laravel[1][3]:

  • Пакеты (англ. packages) — позволяют создавать и подключать модули в формате Composer к приложению на Laravel. Многие дополнительные возможности уже доступны в виде таких модулей.
  • Eloquent ORM — реализация шаблона проектирования ActiveRecord на PHP. Позволяет строго определить отношения между объектами базы данных. Стандартный для Laravel построитель запросов Fluent поддерживается ядром Eloquent.
  • Логика приложения — часть разрабатываемого приложения, объявленная либо при помощи контроллеров, либо маршрутов (функций-замыканий). Синтаксис объявлений похож на синтаксис, используемый в каркасе Sinatra.
  • Обратная маршрутизация связывает между собой генерируемые приложением ссылки и маршруты, позволяя изменять последние с автоматическим обновлением связанных ссылок. При создании ссылок с помощью именованных маршрутов Laravel автоматически генерирует конечные URL.
  • REST-контроллеры — дополнительный слой для разделения логики обработки GET- и POST-запросов HTTP.
  • Автозагрузка классов — механизм автоматической загрузки классов PHP без необходимости подключать файлы их определений в include. Загрузка по требованию предотвращает загрузку ненужных компонентов; загружаются только те из них, которые действительно используются.
  • Составители представлений (англ. view composers) — блоки кода, которые выполняются при генерации представления (шаблона).
  • Инверсия управления (англ. Inversion of Control) — позволяет получать экземпляры объектов по принципу обратного управления. Также может использоваться для создания и получения объектов-одиночек (англ. singleton).
  • Миграциисистема управления версиями для баз данных. Позволяет связывать изменения в коде приложения с изменениями, которые требуется внести в структуру БД, что упрощает развёртывание и обновление приложения.
  • Модульное тестирование (юнит-тесты) — играет очень большую роль в Laravel, который сам по себе содержит большое число тестов для предотвращения регрессий (ошибок вследствие обновления кода или исправления других ошибок).
  • Страничный вывод (англ. pagination) — упрощает генерацию страниц, заменяя различные способы решения этой задачи единым механизмом, встроенным в Laravel.

Долгосрочная поддержка[править | править вики-текст]

В 2011 году фреймворк следовал, как и многие популярные opensource-проекты, мантре "релиз раньше, релиз чаще". С исторически растущей популярностью фреймворка наступило время для акцента на требованиях больших организаций и критически-важных приложений, которые нуждаются в безопасных исправлениях, без скорых обновлений. Laravel 5.1 включает 3 года безопасных исправлений.

Конференции[править | править вики-текст]

Laracon — общее имя конференций, посвящённых фреймворку Laravel. Первая конференция состоялась в Вашингтоне, США, 22—23 февраля 2013. Вторая — в Амстердаме, Нидерланды, 30—31 августа 2013 и была первой европейской Laracon. Третья конференция была проведена в Нью-Йорке, США, 15—16 мая 2014. Все эти конференции организованы с активным участием UserScape и с помощью от различных спонсоров[4][5][6].

План-график выхода релизов Laravel[править | править вики-текст]

Версия Дата выхода Примечание
Laravel 5.1 Июнь 2015 Исправления до июня 2017 года, исправления безопасности до июня 2018 года.
Laravel 5.2 Декабрь 2015 Выпуск подразумевает выход исправлений в течение 6 месяцев, а исправления безопасности в течение одного года.
Laravel 5.3 Июнь 2016 Исправления в течение 6 месяцев, исправления безопасности в течение одного года. В релиз вышел в конце августа 2016 года, на два месяца позже запланированного графика.
Laravel 5.4 Декабрь 2016 Исправления в течение 6 месяцев, исправления безопасности в течение одного года.
Laravel 5.5 Июнь 2017 Это следующий LTS релиз. Прекращается поддержка Laravel 5.1, но еще в течение года будут исправления безопасности.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. 1 2 Daniel Gafitescu. Прощай CodeIgniter, здравствуй Laravel (англ.). sitepoint.com (6 июня 2013). Проверено 21 декабря 2013.
  2. Bruno Skvorc. Лучшие PHP-фреймворки 2014 (англ.). sitepoint.com (28 декабря 2013). Проверено 2 января 2014.
  3. Jeffrey Way. Почему Laravel захватывает PHP-сообщество (англ.). tutsplus.com (29 ноября 2012). Проверено 21 декабря 2013.
  4. Вики Laravel (англ.). laravel.io. Проверено 2 января 2014.
  5. Laracon EU 2013 (англ.). laracon.eu. Проверено 2 января 2014.
  6. Сайт Userscape (англ.). userscape.com. Проверено 2 января 2014.

Литература[править | править вики-текст]

Ссылки[править | править вики-текст]