флуд из Модели в фреймворках

grigori

( ͡° ͜ʖ ͡°)
Команда форума

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Что не так с softDelte - безграмотность, необразованность, незнание общепринятых принципов проектирования систем - банды 4х, Фаулер, паттернов проектирования. Отсутствие опыта изменения кода под изменения бизнес-логики в реальных проектах.

Человек вырос в конторе, которая специализируется на потоке дешевых говносайтиков. Фреймвоку вредят официальные костыли в стиле Wordpress, новичкам вредят эти лекции о пользе курения. Когда на это решение оказываются завязаны деньги, работа кучи людей, а сделать что надо не получается - люди плюются от такого фреймвока.

Моя основная работа последние годы - спасать проекты, когда разработчики используют эти расширения, не справляются, их выгоняют, а проект надо реанимировать. Вот прямо сейчас вычищаю softDelte из кода приложения, потому что оно просто не может реализовать реальный юзкейс.
 

fixxxer

К.О.
Партнер клуба
Да не объяснишь ты это тем, кто занимается разработкой по типу "студийной", когда надо по-быстрому наклепать, отдать заказчику и забыть. Для них так наоборот удобно - херак-херак и в продакшен, no thinking required. Ровно по тем же причинам такую бешеную популярность получил Laravel.

На том же toptal-е у меня все проекты были такие, загнанные в гроб подобными "архитектурными" решениями с самого начала. Большую часть времени занимаешься тем, что гребешь вот это вот дерьмо, чтобы хоть как-то реализовать стоящие перед бизнесом задачи.
 

Adelf

Administrator
Команда форума
На том же toptal-е у меня все проекты были такие, загнанные в гроб подобными "архитектурными" решениями с самого начала. Большую часть времени занимаешься тем, что гребешь вот это вот дерьмо, чтобы хоть как-то реализовать стоящие перед бизнесом задачи.
(скупая мужская слеза)
 

AmdY

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

напомню первый мой пост в данной теме - Лучший инструмент тот, которым ты умеешь пользоваться.

Дай проект Фиксера менее скиластому прогеру, тот вообще сдохнет.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Да не объяснишь ты это тем, кто занимается разработкой по типу "студийной", когда надо по-быстрому наклепать, отдать заказчику и забыть. Для них так наоборот удобно - херак-херак и в продакшен, no thinking required.
Отакининадо, я как "студия" делать все старался всегда нормик) С пожизненной гарантией. Ну, если в код не влезали.

Ларва получила популь по другим суркумстансес, там ОЧЕНЬ крутое коммьюнити было изначально. Куча нубов учила совсем нубов и они подрастали. Плюс абсолютно нормальные доки. Я по симфони, со своими овердохрена лет в php не смог сориентироваться до сих пор. В симфе надо было, как в ларке .env получить в шаблоне, там пздц танцы с бубном для этого надо делать.
 

Adelf

Administrator
Команда форума
В симфе надо было, как в ларке .env получить в шаблоне, там пздц танцы с бубном для этого надо делать.
это называется порог вхождения. в симфони он выше. получается фреймворк с высоким порогом вхождения в языке низкого порога вхождения :)
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
это называется порог вхождения. в симфони он выше. получается фреймворк с высоким порогом вхождения в языке низкого порога вхождения :)
Логично, что в фрейме тебе не надо ВСЕ делать самому как в cимфе. Простые задачи, типа передачи говен вариаблов с гонфига в шаблоны - должен решать сам фреймворк, но нет. Или я может чего не понимаю, для чего нужен FW?
 

Adelf

Administrator
Команда форума
Ну конкретно последняя фраза конечно больше шутка. Я с симфони не работал. Не могу его идеологию прочувствовать. Но правильные ограничения - это основа всего. Они единственные, кто удерживает разработку от погружения в хаос. Главное требование, чтобы ограничения эти были правильными.
Раньше была мешанина php+html+sql. Потом люди подумали и решили ввести ограничения. Назвали их MVC и народ начал потихоньку отделять одно от другого.
В ларке ограничения конечно тоже есть, но очень много позволяется. Как раз для того подхода, про который говорил @fixxxer .
Симфони, насколько я тебя понял, не позволяет вставить переменную из .env напрямую во вью. И я понимаю эти ограничения. Переменные окружения должны быть обработаны на другом слое. В той же конфигурации. Брать эти значения прямо из вью - это перескок сразу через несколько слоев приложения. Пусть эти слои виртуальны и существуют только в нашей голове, но они есть. И вероятно авторы симфони сделали такие ограничения, чтобы искусственно заставить людей делать более правильные вещи. передавая данные через нужные абстракции. Нравится тебе это или нет - но у них такой подход.

Кстати в ларке тоже неправильно во вью брать .env переменные :) закешировать конфиг и все перестанет работать.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Адель, я ок, многого не знаю, env(), там просто нет! Они в хаос ее и погружают, ибо нет вообще нормальных пояснений как что сделать. Я капчу пытался запилить.

>>Главное требование, чтобы ограничения эти были правильными.
О чем речь?

>>Раньше была мешанина php+html+sql. Потом люди подумали и решили ввести ограничения. Назвали их MVC и народ начал потихоньку отделять одно от другого.
Вообще вред, сейчас MVC каждый школьник понимаем по своему, и ты лучше меня это знаешь.

>>Пусть эти слои виртуальны и существуют только в нашей голове, но они есть.
Да слоев то нафантазировать можно сколь угодно, но проблема то в доступе к "простым" свойствам у готового фреймворка. То есть дайте хоть как-то через ваш внутренний API достучаться до ОСНОВНЫХ вещей (конфиги пакетов, базы и прочее.). Пусть сие будет не в $app->cofig, пусть в $app->config->getConfManager()->getЧто-то-там.

Самое дикое - это то, что нет ни одного адекватного ответа на вопрос выше =\
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
В симфони у тебя env будет использоваться в конфиге, а параметры ты будешь получать через DI.

Причем конфиг это не просто массив чего попало, а валидируемая структура (без этого ты бандл не сделаешь. Ну, то есть, конечно, можно написать реализацию ConfigurationInterface, которая пропускает что угодно, но это уж ССЗБ).

Можно, конечно, все эти правила нарушить и сделать через задницу, но sf устроен так, что это СЛОЖНЕЕ, чем сделать то, как авторы sf считают правильным.
 

fixxxer

К.О.
Партнер клуба
Дай проект Фиксера менее скиластому прогеру, тот вообще сдохнет.
Дай проект на Ларавеле программисту на вордпрессах, он тоже сдохнет.

Я ж это делаю не просто чтобы ЧСВ потешить, а чтобы управлять сложностью проекта в долгосрочной перспективе. Если клепаешь проекты, сдаешь заказчику и забываешь, такой подход, конечно, никому не нужен. А когда свой бизнес, уже совсем иначе об этом всем мыслишь (и, да, многие куски MVP клепали на активрекордах, потому что так быстрее и не надо меня 5 раз клонировать, да и неклонированный я срезал углы, чтобы раз-два и в продакшен - но осознавали, что это на выброс, тем более что была нехилая вероятность что один фиг на выброс. Вот сейчас по уму делаю).

Обучение через code review и парное программирование прекрасно работает. Тут два варианта: либо человек учится, постепенно вникает и через несколько итераций начинает мыслить в новой парадигме, либо он дебил и это была ошибка найма.
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
Я с симфони не работал. Не могу его идеологию прочувствовать.
Попробуй еще раз, только на современных версиях (начиная с 4-й. Ну вон 5-я уже), и игнорируя несущественные мелочи, которые просто непривычны, странны или даже вызывают субъективную неприязнь (многое "исторически сложилось") - просто отмечай для себя, что "ну вот такое оно", не зацикливайся и двигайся дальше.

У меня с очередного захода получилось.
 

Adelf

Administrator
Команда форума
Попробуй еще раз, только на современных версиях (начиная с 4-й. Ну вон 5-я уже), и игнорируя несущественные мелочи, которые просто непривычны (многое "исторически сложилось").

У меня с очередного захода получилось.
моя фраза "не могу прочувствовать" не означает, что она мне чужда, а просто не было возможности хорошо ознакомиться с фреймворком. И видимо еще долго не будет. Я теперь пытаюсь делать бизнес на ларке: https://plugins.jetbrains.com/plugin/13441-laravel-idea так, что я теперь "симфони - говно, ларка рулит" )))
 

fixxxer

К.О.
Партнер клуба
Ну тут-то ты вообще на джаве (или котлине) пишешь. :)

Я вот выбирал по принципу "не ставит палки в колеса и позволяет сделать так, как я хочу", и методом исключения остался sf.
 

fixxxer

К.О.
Партнер клуба
Да. Котлин - one love )
Мне тоже нравится, но типично "вебовые" задачи я на нем пока делать не готов, слишком сильно стек меняется, да и развивать-поддерживать это потом, полагаю, сложнее кого найти будет. Для алгоритмических штук - да.
 
Сверху