Иосиф Дзеранов

Инженер-разработчик .........Преподаватель.......... Наставник в мир программирования

  • Бесплатные курсы
  • Платные дистанционные курсы
  • Программирование на С#
  • Паттерны программирования
  • Внедрение зависимостей
  • Олимпиадное программирование
  • iOS
  • Контакты

IoC

Антипаттерны внедрения зависимостей. Локатор сервисов

21.04.2018 / Leave a Comment

Главной задачей Локатора сервисов является предоставление экземпляров сервисов по запросам пользователей. Consumer использует интерфейс IService и запрашивает экземпляр у Локатора сервисов, который возвращает экземпляр той конкретной реализации, на возврат которой он сконфигурирован. Если рассматривать только статическую структуру классов, контейнеры внедрения зависимостей покажутся очень похожими на локаторы сервисов. Разница между ними очень мала и заключается не … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, C#, Dependency Injection, DI, DI containers, DI контейнеры, IoC, антипаттерны внедрение зависимостей, Внедрение зависимостей

Антипаттерны внедрения зависимостей. Гибридное внедрение

08.04.2018 / 37 комментариев

Сегодня рассмотрим следующий антипаттерн внедрения зависимостей Гибридное внедрение. Перегрузка конструктора часто встречается в проектах на .NET (в том числе в библиотеке BCL). Часто код перегрузки обеспечивает наличие подходящих значений по умолчанию для одного или двух полнофункциональных конструкторов, получающих на входе все определенные параметры. 1 2 3 4 5 6 7 8 9 10 11 12 … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, Dependency Injection, DI паттерны, IoC, Внедрение зависимостей

Окружающий контекст (Ambient Context)

31.03.2018 / 1 Comment

Как можем мы сделать зависимость доступной в каждом модуле без включения в каждый API компонента сквозных аспектов приложения? «Окружающий контекст» доступен любому потребителю через статическое свойство или метод. Потребляющий класс может использовать его следующим образом: 1 2 3 4 public string GetMessage() { return SomeContext.Current.SomeValue; }public string GetMessage() { return SomeContext.Current.SomeValue; } Чтобы быть полезным … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, Ambient Context, C#, Dependency Injection, DI, DI containers, DI контейнеры, DI паттерны, IoC

Внедрение через метод (Method Injection)

28.03.2018 / Leave a Comment

Как можно внедрить зависимости в класс, если они различны для каждой операции? Путем передачи в качестве параметра метода. Если при каждом вызове метода используется другая зависимость, вы можете передать ее через параметр метода. Как это работает Вызывающая сторона передает зависимость как параметр метода при каждом его вызове. Эта процедура не сложнее, чем сигнатура представленного ниже … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, C#, DI, DI containers, DI контейнеры, DI паттерны, IoC, Method Injection, Внедрение зависимостей, Внедрение через метод

Внедрение через свойства (Property Injection)

25.03.2018 / Leave a Comment

Продолжаем разбираться с внедрениями зависимостей в .Net, так как данная тема является одним из обязательных к изучению для написания качественного, гибкого к изменениям и тестируемого кода. Сегодня разберем внедрение через свойство или Property Injection. Итак, поехали! Назначение Разорвать жесткую связь между классом и его необязательными зависимостями. Описание Как можно разрешить внедрение зависимостей как опцию в … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, C#, Dependency Injection, DI, DI containers, DI контейнеры, DI паттерны, IoC, Внедрение зависимостей

Внедрение через конструктор (Constructor Injection)

23.03.2018 / Leave a Comment

С данного поста начнем разбираться с внедрениями зависимостей в .Net, так как данная тема является одним из обязательных к изучению для написания качественного, гибкого к изменениям и тестируемого кода. Начнем мы с первого базового паттерна внедрения зависимостей — внедрение через конструктор. Итак, поехали! Назначение Разорвать жесткую связь между классом и его обязательными зависимостями. Описание Суть … Читать дальше →

Posted in: Внедрение зависимостей Tagged: .Net, C#, Constructor Injection, Dependency Injection, DI паттерны, IoC

Архивы

  • Январь 2020
  • Сентябрь 2019
  • Ноябрь 2018
  • Сентябрь 2018
  • Апрель 2018
  • Март 2018
  • Февраль 2018
  • Январь 2018
  • Декабрь 2017
  • Ноябрь 2017
  • Октябрь 2017
  • Сентябрь 2017
  • Август 2017
  • Июль 2017

Copyright © 2026 Иосиф Дзеранов.

Me WordPress Theme by themehall.com