Дмитрий Свистунов@Master1881
Пользователь
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность
Специализация
Бэкенд разработчик, Фулстек разработчик
Ведущий
От 2 500 $
Git
Python
Docker
ООП
PHP
Golang
PostgreSQL
REST
Базы данных
Высоконагруженные системы
"В МВУ нет ни одной строчки кода из МНУ" - это достигается за счёт передачи в качестве зависимости (например через аргумент функции, аргумент в конструкторе) интерфейса, вместо непосредственно самого МНУ, поэтому в МВУ не будет строчек кода МНУ, а будет вызов метода интерфейса МВУ, т.е. строчек кода МВУ.
МНУ не используется интерфейс из МВУ, а реализует его, то есть зависит от абстракции - интерфейс. Модули не поменялись местами, а просто зависимость поменяла направление: МВУ перестал зависит от конкретной реализации МНУ, а наоборот диктует через интерфейс МНУ как ему себя надо вести. Но при этом МВУ использует МНУ, поэтому находиться на верхнем уровне