Вопросы с тегом «dependency-injection»

Внедрение зависимостей - это шаблон проектирования, в котором зависимости (экземпляры объектов, свойства) компонента устанавливаются с помощью конструктора (ов), методов или полей (свойств). Это особая форма более общего обращения зависимостей.

4
Зачем нам нужны фреймворки для внедрения зависимостей? [закрыто]
Я читал больше о принципах Inversion of Control и Inpendency Injection как его реализации, и я уверен, что понимаю его. Кажется, что в основном говорится «не объявляйте инстанцирования ваших учеников внутри класса». Скорее, что экземпляры должны быть переданы и назначены через конструктор; «введен» в класс из внешнего источника. Если это …

2
Сколько стоит слишком много инъекций зависимости?
Я работаю в проекте, который использует (Spring) Dependency Injection для буквально всего, что является зависимостью класса. Мы находимся в точке, где конфигурационный файл Spring вырос до 4000 строк. Недавно я смотрел один из выступлений дяди Боба на YouTube (к сожалению, я не смог найти ссылку), в котором он рекомендует внедрить …

12
Повлиял ли постепенный сдвиг в методологии написания кода на производительность системы? И мне все равно?
TD; DR: Был некоторый беспорядок относительно того, что я спрашивал, таким образом, вот движущая идея позади вопроса: Я всегда хотел, чтобы вопрос был таким, какой он есть. Я, возможно, не сформулировал это хорошо изначально. Но намерение всегда было « модульным, разделенным, слабо связанным, разъединенным, рефакторированным кодом », заметно медленнее по …

3
Как инъекция зависимости увеличивает связь?
На странице Википедии, посвященной внедрению зависимостей, раздел о недостатках говорит нам об этом: Внедрение зависимостей увеличивает связь, требуя от пользователя подсистемы обеспечивать потребности этой подсистемы. со ссылкой на статью против внедрения зависимостей . Внедрение зависимостей заставляет класс использовать интерфейс вместо конкретной реализации. Это должно привести к снижению сцепления , нет? …

4
Продвигает ли «Инверсия контроля» «Модель анемичного домена»?
Когда я использовал IoC Container в моем последнем проекте, я получил анемичные сущности и большую часть своей бизнес-логики в сервисах без сохранения состояния. Я видел проекты, написанные другими разработчиками, которые используют «Inversion of Control», и они всегда «анемичны». Поскольку «Модель анемичного домена» является анти-шаблонной, возможно ли использовать IoC и Rich …

6
Какие классы должны быть автоматически подключены Spring (когда использовать внедрение зависимостей)?
Я уже некоторое время использую Dependency Injection в Spring, и я понимаю, как это работает и каковы некоторые плюсы и минусы его использования. Однако, когда я создаю новый класс, я часто задаюсь вопросом - должен ли этот класс управляться Spring IOC Container? И я не хочу говорить о различиях между …

4
Перехват против Инъекции: решение архитектуры платформы
Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 7 лет назад . Есть эта структура, которую я помогаю разработать. Есть некоторые общие задачи, которые должны быть выполнены с использованием некоторых общих компонентов: журналирование, кеширование и повышение событий в частности. …

5
Какой лучший способ построить фабрику, используя NInject?
Я довольно удобен для внедрения зависимостей, используя NInject в MVC3. Работая в приложении MVC3, я разработал собственную фабрику создания контроллеров, используя NInject, поэтому любой созданный контроллер будет иметь зависимости, введенные в него через эту фабрику контроллеров. Сейчас я начинаю разрабатывать приложение для Windows, я хочу использовать Application Dependency Injection. каждый …

6
Внедрение зависимости ; передовая практика по сокращению стандартного кода
У меня простой вопрос, и я даже не уверен, что у него есть ответ, но давайте попробуем. Я пишу на C ++ и использую инъекцию зависимости, чтобы избежать глобального состояния. Это работает довольно хорошо, и я не часто сталкиваюсь с неожиданным / неопределенным поведением. Однако я понимаю, что по мере …

9
Инъекция зависимости: должен ли я использовать фреймворк?
Недавно я работал над проектом Python, в котором мы интенсивно делали внедрение зависимостей (потому что мы должны сделать так, чтобы приложение было тестируемым), но мы не использовали какую-либо инфраструктуру. Временами было немного утомительно связывать все зависимости вручную, но в целом все работало замечательно. Когда объект должен был быть создан в …

4
Законная «настоящая работа» в конструкторе?
Я работаю над дизайном, но продолжаю преодолевать препятствия. У меня есть определенный класс (ModelDef), который по сути является владельцем сложного дерева узлов, созданного путем анализа XML-схемы (например, DOM). Я хочу следовать хорошим принципам проектирования (SOLID) и гарантировать, что полученная система легко тестируется. У меня есть все намерения использовать DI для …

2
Domain-Driven-Design - внешние зависимости в проблеме сущностей
Я хотел бы начать Domain-Driven-Design, но есть несколько проблем, которые я хотел бы решить перед началом :) Давайте представим, что у меня есть Группы и Пользователи, и когда пользователь хочет присоединиться к группе, я вызываю groupsService.AddUserToGroup(group, user)метод. В DDD я должен сделать group.JoinUser(user), что выглядит довольно хорошо. Проблема возникает, если …

7
Каков «правильный» способ реализации DI в .NET?
Я пытаюсь внедрить внедрение зависимостей в относительно большие приложения, но у меня нет опыта в этом. Я изучил концепцию и несколько доступных реализаций IoC и инжекторов зависимостей, таких как Unity и Ninject. Однако есть одна вещь, которая ускользает от меня. Как мне организовать создание экземпляра в моем приложении? Я думаю …

4
Является ли функциональное программирование жизнеспособной альтернативой шаблонам внедрения зависимостей?
Недавно я читал книгу под названием « Функциональное программирование на C #», и мне пришло в голову, что неизменяемая и не имеющая состояния природа функционального программирования обеспечивает результаты, аналогичные шаблонам внедрения зависимостей, и, возможно, даже лучший подход, особенно в отношении модульного тестирования. Я был бы признателен, если бы кто-либо, имеющий …

6
Должно ли использование DI / IoC удалить все вхождения ключевого слова «new»?
Должно ли использование Dependency Injection и контейнера Inversion of Control удалить все вхождения newключевого слова " " из вашего кода? Другими словами, должен ли каждый объект / зависимость, независимо от того, простой ли он или недолговечный, быть «зарегистрирован» в вашем контейнере IoC и внедрен в метод / класс, который должен …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.