Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / ninject resolve объектов / 6 сообщений из 6, страница 1 из 1
20.01.2016, 20:52
    #39151829
EIT
EIT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
Помогите разобраться новичку,
многие примеры которые я нашел в сети используют метод: IKernel.Get<ISomeObject>();
Такое использование похоже на паттерн ServiceLocator. Это так?
Как делается разрешение объектов в реальных приложениях? Используется injection в конструктор?
...
Рейтинг: 0 / 0
20.01.2016, 20:59
    #39151832
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
Хорошая книжка по DI
http://smarly.net/dependency-injection-in-net/
...
Рейтинг: 0 / 0
21.01.2016, 06:09
    #39151909
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
EITТакое использование похоже на паттерн ServiceLocator. Это так?
ServiceLocator - это антипаттерн, использование которого приводит к наличию неявных и неотслеживаемых зависимостей класса. Соответственно, использовать этот антипаттерн крайне не рекомендуется. То, что его можно построить на основе диконтейнера, вовсе не говорит о том, что диконтейнер сам по себе чреват наличием сервис-локатора.
EITКак делается разрешение объектов в реальных приложениях? Используется injection в конструктор?
Это слишком длинная тема, по которой, к тому же, всё уже расписано в книгах. По ссылке выше классика жанра на эту тему.
...
Рейтинг: 0 / 0
21.01.2016, 06:33
    #39151911
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
Сон Веры ПавловныServiceLocator - это антипаттерн, использование которого приводит к наличию неявных и неотслеживаемых зависимостей класса.Страшилка времён конца 90-х. Из разряда: "Давайте фанатично обёртывать все поля свойствами". :-)

Инжектирование через конструктор/свойства позволяет прикладному коду автоматически не зависеть от конкретной реализации ди-контейнера, без написания дополнительной обёртки вокруг ди-контейнера - и всего-то.

Сон Веры ПавловныСоответственно, использовать этот антипаттерн крайне не рекомендуется.Как быть, если:

1. Требуется инжектировать зависимость в объект, созданный НЕ ди-контейнером.
2. Требуется создать новый Lifetime Scope.
3. Да мало ли чего ещё...
...
Рейтинг: 0 / 0
24.01.2016, 21:15
    #39154109
EIT
EIT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
Shocker.ProХорошая книжка по DI
http://smarly.net/dependency-injection-in-net/
Отличная книга, спасибо за ссылку. Расставляет все по полочкам, после множества статей по этой теме.
...
Рейтинг: 0 / 0
25.01.2016, 00:20
    #39154186
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ninject resolve объектов
Пожалуйста )
Всегда считал, что лучше читать для начала книгу, а уже потом множество статей.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / ninject resolve объектов / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]