Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Re: Laravel 5.x » Почему именно Laravel? » 06.08.2015 14:37:52

Proger_XP возможно еще поработаю над статьей, хотелось просто вкратце описать другие фреймворки с которыми работал.

#2 Re: Laravel 5.x » Почему именно Laravel? » 06.08.2015 03:16:30

До знакомства и использования Laravel я поработал с разными фреймворками, yi1/2, sf2, silex, kohana 3, zend2, ci.

Начнем с Zend2. Самый медленный и сложный фреймворк, большой уровень абстракции, приходится писать много кода для елементарных вещей, скудная документация. Единственный плюс, пожалуй, огромная база компонентов которые можно использовать без самого фреймворка. мало где используется, почти нет проектов на фрилансе. Я бы сказал уровень не меньше enterprise, но symfony2 в любом случае лучше. Вроде будет 3 версия, посмотрим smile

Symfony2

Фреймворк так же довольно сложный и тяжелый, но в несколько раз быстрее Zend2, хорошая документация, многое описано, большое комьюнити, LTS версии, много готовых бандлов. Unit тесты, assetic, doctrine, twig и многое другое из коробки. Хорошой DI контейнер, один из лучших. При должном уровне знаний хороший и гибкий инструмент для разработки. На фрилансе проскакивают проекты с требованием Symfony2 в качестве фреймворка, но в основном его используют компании что подразумивает работу в офисе. Не подойдет новичкам, для сайтов визиток.

Silex

Микро фреймворк основанный на компонентах Symfony2, как по мне уже устарел в силу того что почти не обновляется. Если нужно быстро запилить маленький сайт то подойдет, но лучше использовать Lumen framework.

Yii1/2

Не вижу ничего выдающегося в этом фреймворке, довольно простой в освоении, большое комьюнити, есть готовые бандлы, во второй версии ничего кардинально не изменилось. Очень много плохого кода пишут программисты. Есть свой Di контейнер, ActiveRecord (вполне хороший) другие полезные компоненты, быстро работает. Хватает заказов на фрилансе. В принципе сносный фреймворк если руки есть.

Kohana / Ci

Про CI много говорить нечего, старый фреймворк, не идет в ногу со временем, никаких крутых фич там нету, только для проектов ранее на нем  написанных.
Kohana это форк CI, сейчас официально закрыт. Для новичков самое оно, самый просто уровень абстракции, мало шаблонов проектирования, быстрый. Простой и понятный mvc, расширяемое ядро, каскадная файловая система (как по мне не самое лучшее решение). Свой ORM, QueryBuilder, кэш, библиотека для работы с изображениями, аутентификация и другое.

Перейдем к Laravel

Laravel зацепил меня простотой и в то же время своей гибкостью, приемлимым уровнем абстракции, большим количеством пакетов из коробки. Довольно простой в освоении, можно быстро сделать готовый сайт, отличный ActiveRecord, отличная работа с консолью. Хорошая документация, очень быстрый и потребляет мало памяти (У sf2 ~7mb с включенным кэшированием и opcache, ~3 у laravel при чистой установке, если нагрузить бандлами sf2 память взлетит до >15, у laravel примерно такое же количество бандлов выйдет ~8, при том что Laravel основан на компонентах sf2). 5.1 Является LTS версией с длительной поддержкой что окончательно заставило начать с ним работать. Из минусов мало заказов на фрилансе, да и в офисе не так много работы.

Lumen

Микрофреймворк основанный на компонентах laravel, вырезаны несколько библиотек, роутинг заменен на FastRoute (вместо sf2). Быстрее чем silex, новее.


Про CMS

Wordpress создавался для ведения блога, но сейчас на нем делают всевозможные сайты. Огромное количество бесплатных и платных плагинов, шаблонов. Самая большая доля на рынке, огромное количество работающих сайтов. Из минусов все сделано на $GLOBALS, малое количество ООП, в то же время очень гибкий и расширяемый движок. Бывают массовые взломы, но считается надежным.

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

Drupal считается не совсем CMS а CMF - Content Management Framework. Много готовых возможностей для создания своих модулей, слышал очень гибкий. Сам с ним не работал, считаю его ресурсоемким. Сейчас в разработке 8 версия, которая так же основана на компонентах Symfony2, инструмент будет мощный но тяжелый.

Мой выбор Laravel, SF2, в самом крайнем случае yii2.

#3 Re: Laravel 5.x » Передача модели из View в контроллер » 06.08.2015 00:31:13

Вы делаете 2 запроса в одном action или разных? Не совсем понимаю зачем вам вернуть модель из шаблона?

#4 Re: Laravel 5.x » Загрузка Eloquent » 06.08.2015 00:25:59

Eloquent работает по шаблону ActiveRecord, модель берет названия полей из самой таблицы командой SHOW COLUMNS FROM table;

Подвал раздела