Laravel традиционно является MVC-фреймворком, но MVC не слишком хорошо масштабируется для крупных проектов. Обычно, в конечном итоге получается, что логика содержится во всех секциях: моделях, представлениях и контроллерах, и по мере развития приложения его становится почти невозможно тестировать. В книге Тейлора Отвелла упоминается шаблон репозитория, но даже он не способен решить эту проблему масштабируемости. После того, как коллега показал мне статью в блоге о шестиугольном шаблоне проектирования в Rails, я решил попробовать применить его в Laravel —…
При работе над большими Laravel-проектами всегда возникает вопрос: «Каким образом мне организовать весь этот код?» Многие люди начали предлагать новые пути решения данной проблемы. Довольно часто люди создают пространство имен в своих котроллерах, представлениях, составителях (view composers) и сервисе каталогов. Но для меня — это нечто паутины, состоящей из каталогов, и кричащей: «Я просто подгоняю все под MVC». Обычно я наблюдаю, как люди создают пространство имен с названиями типа API, Admin Panel и для самого сайта (Marketing). Таким образом, структура их приложения приобретает некий вид…
У всех нас рано или поздно наступает момент в жизни, когда мы хотим поделиться кучей уведомлений с пользователем.
На первый взгляд это может вызвать некоторые сложности, но у меня имеется шаблон, который может решить проблему «в лоб».
Я хочу выразить отдельную благодарность Крису Фидао за оказанную мне помощь в корректировке и улучшении этой статьи. Если вас интересует больше информации о прагматичном проектировании Laravel-приложений, советую прочитать его книгу.
…