Почему люди говорят о структурах DI "создание экземпляра графа объектов", а не "создание объектов"?
Я читаю книгу о DI, в которой всегда говорится о DI-фреймворках "создание экземпляра графа объекта". Зачем так говорить, а не "создавать объекты"?
3 ответа
Граф объектов состоит из объектов, которые содержат ссылки друг на друга. Другое название графа в этом контексте - сеть.
Система IOC была бы бесполезна, если бы она забыла установить ссылки между объектами! Именно способ, которым объекты автоматически получают ссылки на другие объекты, которые им нужны, - вот и вся ценность системы IOC.
Термин "граф объектов" подразумевает, что у вас есть набор объектов, которые будут созданы одновременно. Использование этого термина может помочь провести различие между шаблоном внедрения зависимостей (где вы обычно будете ссылаться только на структуру DI в одном месте) и шаблоном локатора служб (где вы будете использовать его для создания / доступа к объектам в нескольких местах в вашем приложении).,
Граф - это набор взаимосвязанных объектов. Таким образом, его создание может представлять собой создание нескольких отдельных объектов.
Чтобы отличить создание одного объекта от создания набора объектов, мы используем термин "граф объектов". Это помогает сообщить о масштабах Resolve
операция.