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

Шаблон проектирования для уменьшения связи между компонентами путем динамического внедрения в зависимости компонента программного обеспечения, которые ему необходимы для функционирования.

9
Как обрабатывать внедрение зависимостей в приложении WPF / MVVM
Я запускаю новое настольное приложение и хочу создать его с помощью MVVM и WPF. Я также собираюсь использовать TDD. Проблема в том, что я не знаю, как мне использовать контейнер IoC для внедрения моих зависимостей в мой производственный код. Предположим, у меня есть следующий класс и интерфейс: public interface IStorage …

7
Angularjs минимизировать лучшие практики
Я читаю http://www.alexrothenberg.com/2013/02/11/the-magic-behind-angularjs-dependency-injection.html, и оказалось, что инъекция зависимостей angularjs имеет проблемы, если вы минимизируете свой javascript, поэтому я мне интересно, если вместо var MyController = function($scope, $http) { $http.get('https://api.github.com/repos/angular/angular.js/commits') .then(function(response) { $scope.commits = response.data }) } вы должны использовать var MyController = ['$scope', '$http', function($scope, $http) { $http.get('https://api.github.com/repos/angular/angular.js/commits') .then(function(response) { …

3
.NET Core DI, способы передачи параметров конструктору
Имея следующий конструктор службы public class Service : IService { public Service(IOtherService service1, IAnotherOne service2, string arg) { } } Каковы варианты передачи параметров с использованием механизма .NET Core IOC _serviceCollection.AddSingleton<IOtherService , OtherService>(); _serviceCollection.AddSingleton<IAnotherOne , AnotherOne>(); _serviceCollection.AddSingleton<IService>(x=>new Service( _serviceCollection.BuildServiceProvider().GetService<IOtherService>(), _serviceCollection.BuildServiceProvider().GetService<IAnotherOne >(), "" )); Есть ли другой способ ?

2
Как настроить внедрение зависимостей DAGGER с нуля в Android-проекте?
Как использовать кинжал? Как настроить Dagger для работы в моем Android-проекте? Я бы хотел использовать Dagger в своем Android-проекте, но это меня сбивает. РЕДАКТИРОВАТЬ: Dagger2 также отсутствует с 2015 04 15, и это еще более сбивает с толку! [Этот вопрос является «заглушкой», на которую я добавляю свой ответ, поскольку я …

6
Google Guice против PicoContainer для внедрения зависимостей
Моя команда изучает фреймворки внедрения зависимостей и пытается выбрать между использованием Google-Guice и PicoContainer. В нашем фреймворке мы ищем несколько вещей: Небольшой след кода. Под небольшим размером кода я подразумеваю, что мы не хотим, чтобы повсюду в нашей базе кода был мусор кода внедрения зависимостей. Если нам понадобится провести рефакторинг …

4
Внедрение Symfony 2 EntityManager в сервисе
Я создал свою собственную службу, и мне нужно внедрить доктрину EntityManager, но я не вижу, что она __construct()вызывается в моей службе, и внедрение не работает. Вот код и конфиги: <?php namespace Test\CommonBundle\Services; use Doctrine\ORM\EntityManager; class UserService { /** * * @var EntityManager */ protected $em; public function __constructor(EntityManager $entityManager) { …

9
В чем разница между шаблоном стратегии и внедрением зависимостей?
И шаблон стратегии, и внедрение зависимостей позволяют нам устанавливать / внедрять объекты во время выполнения. В чем разница между шаблоном стратегии и внедрением зависимостей?

3
AngularJS seed: размещение JavaScript в отдельных файлах (app.js, controllers.js, directives.js, filters.js, services.js)
Я использую шаблон angular-seed для структурирования своего приложения. Изначально я поместил весь свой код JavaScript в один файл main.js. Этот файл содержал мое объявление модуля, контроллеры, директивы, фильтры и службы. Приложение работает нормально, как это, но я беспокоюсь о масштабируемости и ремонтопригодности, поскольку мое приложение становится более сложным. Я заметил, …

7
Могу ли я передать параметры конструктора методу Unity Resolve ()?
Я использую Microsoft Unity для внедрения зависимостей и хочу сделать что-то вроде этого: IDataContext context = _unityContainer.Resolve<IDataContext>(); var repositoryA = _unityContainer.Resolve<IRepositoryA>(context); //Same instance of context var repositoryB = _unityContainer.Resolve<IRepositoryB>(context); //Same instance of context IDataContext context2 = _unityContainer.Resolve<IDataContext>(); //New instance var repositoryA2 = _unityContainer.Resolve<IRepositoryA>(context2); RepositoryAи у RepositoryBобоих есть конструктор, который принимает …

7
исключить @Component из @ComponentScan
У меня есть компонент , который я хочу , чтобы исключить из @ComponentScanв частности @Configuration: @Component("foo") class Foo { ... } В противном случае он, похоже, конфликтует с каким-то другим классом в моем проекте. Я не совсем понимаю конфликт, но если я закомментирую @Componentаннотацию, все будет работать так, как я …

7
Внедрение зависимостей и шаблон проектирования синглтонов
Как определить, когда использовать внедрение зависимостей или одноэлементный шаблон. Я читал на многих веб-сайтах, где говорится: «Используйте инъекцию зависимостей по шаблону singleton». Но я не уверен, что полностью согласен с ними. Для моих малых или средних проектов я определенно вижу простое использование одноэлементного шаблона. Например Регистратор. Я мог бы использовать …

6
повторно открыть и добавить зависимости к уже загруженному приложению
Есть ли способ внедрить позднюю зависимость в уже загруженный модуль angular? Вот что я имею в виду: Скажем, у меня есть угловое приложение для всего сайта, определенное как: // in app.js var App = angular.module("App", []); И на каждой странице: <html ng-app="App"> Позже я снова открываю приложение, чтобы добавить логику …

2
Как получить аннотированный экземпляр из инжектора Guice?
Допустим, у меня есть модуль: Module extends AbstractModule { @Override protected void configure() { bind(String.class). annotatedWith(Names.named("annotation")). toInstance("DELIRIOUS"); } } и я хочу протестировать модуль и проверить, вводит ли он правильное значение в Stringполе с аннотацией, Names.named("annotation")не имея класса и поля, но получая значение непосредственно из инжектора: @Test public void test() …

2
Reader Monad для внедрения зависимостей: множественные зависимости, вложенные вызовы
На вопрос о внедрении зависимостей в Scala довольно много ответов указывают на использование Reader Monad, будь то из Scalaz или просто скатываете свою собственную. Есть ряд очень четких статей, описывающих основы подхода (например , выступление Рунара , блог Джейсона ), но мне не удалось найти более полный пример, и я …

9
Что такое питонический способ внедрения зависимостей?
Введение Для Java внедрение зависимостей работает как чистое ООП, т. Е. Вы предоставляете интерфейс, который будет реализован, и в своем коде фреймворка принимаете экземпляр класса, реализующего определенный интерфейс. Теперь для Python вы можете сделать то же самое, но я думаю, что в случае с Python этот метод был слишком накладным. …

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