Я - фанат yii2. Да, несмотря на многие его недостатки, я смог его полюбить и примерно 5 лет зарабатываю на хлеб с маслом благодаря его разработчикам.
Уже примерно два года я жду релиза Yii3. Я ждал, что это будет крутой монолит, как и вторая версия, но сильно доработанная и с новыми плюшками. Но, как оказалось, Yii3 идёт вообще по другому пути.
У Yii3 есть канал в telegram https://t.me/has_yii3_released , где каждый день в 10:10 выкладывается пост с текущим состоянием разработки Yii3. Я заметил, что спустя 5 месяцев после того, как я подписался на этот канал, развития практически не было. Тогда я решил написать в чате фреймворка (https://t.me/yii3ru) с предложением внести свой труд в разработку. Т.к. я ещё "недомиддл", то меня вежливо отправили обучаться тестированию (без сарказма, реально вежливо).
И тут я решил поинтересоваться, насколько сильным конкурентом он может стать laravel. На что мне ответил один из админов "Я не знаю, но технически получается хорошо :)"
НО! Далее мне рассказали, что (Я - это я, А - админ канала)
А: yii3 сам по себе не даёт архитектуру, можно раскидать всё как угодно, но есть шаблоны приложений, которые предлагают некоторую архитектуру
Тогда у меня возник вопрос, а зачем нужен тогда фреймворк, если он не даёт архитектуру?
А: Он даёт инфраструктурные штуки: роутинг, логи, мидлвари, кэш и т. д.
А архитектура приложения может быть вообще любой, в этом и прелесть.
Я: а как разбираться (мне, фрилансеру), если чел в проекте решил сделать какую-то свою архитектуру? Может я тупой, но не улавливаю смысла. Зачем это? Разве это не выглядит как просто набор библиотек, установленных через композер? не увеличится уровень погружения в проект для программистов?
А: Ну по сути так и есть - набор библиотек
Я отвечаю:
ну вот я вижу заказ условный "доработка проекта на yii2/laravel" - в этом случае я уже знаю, что где лежит и где что мне искать. Для студии/компании, которые используют в проекте фреймворк будет проще найти разработчика, а разработчику будет минимум времени для того чтобы влиться в проект. Разве не в этом смысл любого фреймворка - задать четкую архитектуру?
Ответ админа:
А: Приложения разные и архитектура в них может быть разной. В идеале архитектура приложения вообще не должна зависеть от фреймворка
К чему я это всё: мне одному кажется, что чем архитектура более строгая, тем меньше порог входа для программиста. которого вы нанимаете? И тем проще одному разработчику разобраться в коде проекта, на который он пришёл? Я считаю, что в этом и есть прелесть фреймворков - дать архитектуру, основу, благодаря которой новый разработчик на проекте может влиться в разработку с минимальными затратами. А с Yii3 будет, наоборот повышение порога входа и проблемы для всех.
Я сам - фрилансер, и очень круто, когда на проекте с yii2/laravel у меня нет документации по сайту/приложению, но я знаю, где и что мне искать. (документация - это круто, но бывает очень редко). Но тут приходит Yii3 который позволяет тебе самому выстраивать архитектуру, а сам предлагает лишь набор пакетов. Я не особо фанат laravel, но, видимо, скоро придётся полностью уйти на него ибо на yii2 работы становится всё меньше и меньше.
Отпишитесь, пожалуйста, как вы к этому относитесь. Правда, я не смогу ответить сам ибо моя карма на момент написания этой статьи позволяет оставлять лишь один комментарий в сутки, а после её публикации я, скорее всего, не смогу писать вообще. Поэтому для хорошего аргументированного диалога жду в личку. Всем спасибо за прочтение!
Автор:
tempick