Re[12]: При чем тут Di?
От: IQuerist Мухосранск  
Дата: 12.08.16 10:14
Оценка:
Здравствуйте, ·, Вы писали:

·>Здравствуйте, IQuerist, Вы писали:


IQ>>·>Я пока только вижу код, который назван "плохим". Но код не бывает абстрактно плохим. Он может быть только хуже/лучше некоего другого кода по неким критериям. Вот это я и пытаюсь выудить из тебя: какой код ты считаешь лучше и почему.

IQ>> А незачем особенно всматриваться в код, код лишь намек по которому имхо очень просто определить антипаттерн.
IQ>>Любой другой сходный г...код без DI будет лучше по одной простой причине — он будет значительно проще и меньше по объему в 2-3 раза. А значит не будет создавать препятствий рефакторингу
·>Блин. Пятый раз прошу! Покажи этот самый любой другой сходный гкод!!!

Как вы себе это представляете? Вам enterprise проект выложить? И вы в нем будете копаться? Я понимаю, что ваши требования явить конкретный пример это софистский прием, но не понимаю смысла, демонстрируемого вами упорства, в теме где нет холивара

IQ>>>> Нету в убогих проектах никаких юнит тестов не доживают они до них

IQ>>·>Допустим. И причём тут DI?
IQ>>При том, что его впихивают в проект обосновывая тем, что проще будет писать юнит тесты, которые, к слову как правило никогда не будут написаны
·>Ок. Да, пихают, но тесты не пишут. Тесты не пишут — да, это плохо, полностью согласен. А то что пихание само по себе плохо — мне не очевидно, обоснуй.

т.е. по вашему, принимать решения основываясь на причинах, которые причинами не являются, это серьезный разговор?

IQ>>·>Похоже ты обжёгся на молоке, и теперь дуешь на воду.

IQ>>Я я пишу не о себе, а о других, которые почему-то массово делают одни и те же ошибки, увы связанные с DI. Потому пост и появился.
·>Ошибка — не писать тесты, ошибка — создавать интерфейс для каждого класса. Каким образом это связанно с DI?!

Это вы мне объясните каким волшебным образом решение о неуместном использовании DI попадает в ряд самых глупых и банальных ошибок

IQ>>·>Ага... значит интерфейсы тут не причём как выяснилось. Но в начальном сообщении new и статических функций не было. Может приведёшь более выразительный пример?

IQ>>Для чего? Кейс мегатипичный, те кто сталкивался думаю сразу все поймут. А кто не сталкивался, увы, опыт придется получать самостоятельно.
·>Почему придётся? Может я никогда и не столкнусь.

Значит незачем забивать себе голову

IQ>>·>Т.е. проблема в том, что люди создают интерфейсы где попало, бормоча "во имя DI!", так что-ли? Ну такое надо лечить только ликбезом по мягким местам...

IQ>> Так и я о том же. Но я выделил имхо общепринятый антипаттерн, о котором и написал пост. Пост ведь называется не "Какой же б-гомерзкий этот ваш DI, гореть ему в аду", а — "О "наивном" DI и об архитектурном бессилии".
·>Может я что-то не понимаю, но чего-то плохого в приведённом коде я не увидел. Конструктор с пятью параметрами? Мне попадалось с 37, и это было вполне нормально, т.к. код был хоть и массивный, но тривиальный.

Проблема не в коде, а в ситуации. Если вы с такой не сталкивались, то вероятно пост не для вас.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.