Как стать автором
Обновить

Комментарии 5

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

НЛО прилетело и опубликовало эту надпись здесь

Раньше логика поиска была прямо в методе, теперь она лежит в отдельном классе.

И если вдруг этот класс используется где-либо ещё, вылезут баги вида:

Почему нельзя добавить хлеб другого производителя? Потому что у него цена и вес совпадают уже с существующим.

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

Светильник не может быть в зависимости от винтика

То есть разрабатывая светильник мы придумываем свои уникальные параметры винтиков, а потом на заводе винтиков заказываем их изготовление?

Я почему то думал наоборот. Дизайнер светильника подбирает винтики из доступных в продаже.

Инверсия зависимостей классная штука для расширения мировоззрения, но я никак не могу согласится с автором этого принципа, что надо все инвертировать.

По логике дяди Боба нельзя использовать готовые библиотеки, т.к. оказывается что светильник зависит от винтиков, а не наоборот.

Спасибо за статью как за возможность задать такой вопрос )

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории