В этой статье мы рассмотрим, как писать чистый, легко тестируемый код в функциональном стиле, используя паттерн программирования Dependency Injection. Бонусом идет 100% юнит-тест coverage.
Рубрика «dependency injection» - 3
Размыкаем замыкания и внедряем Dependency Injection в JavaScript
2019-02-18 в 6:14, admin, рубрики: BIND, coverage, dependency injection, di, functional programming, javascript, jest, node.js, pool, Блог компании Developer Soft, Программирование, Проектирование и рефакторингОсновы внедрения зависимостей
2019-01-03 в 9:34, admin, рубрики: android, android development, dependency injection, devcolibri, di, kotlin, testing, внедрение зависимостей, никто не читает теги, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под android, тестирование, Тестирование мобильных приложений
В этой статье я расскажу об основах внедрения зависимостей (англ. Dependency Injection, DI) простым языком, а также расскажу о причинах использования этого подхода. Эта статья предназначена для тех, кто не знает, что такое внедрение зависимостей, или сомневается в необходимости использования этого приёма. Итак, начнём.
Иерархическое внедрение зависимостей в React и MobX State Tree в качестве доменной модели
2018-12-12 в 7:15, admin, рубрики: angular, DDD, dependency injection, di, inversion of control, ioc, javascript, mobx, mobx-state-tree, React, react-ioc, ReactJS, TypeScript, Проектирование и рефакторингДовелось мне как-то после нескольких проектов на React поработать над приложением под Angular 2. Прямо скажем, не впечатлило. Но один момент запомнился — управление логикой и состоянием приложения с помощью Dependency Injection. И я задался вопросом, удобно ли управлять состоянием в React используя DDD, многослойную архитектуру, и внедрение зависимостей?
Если интересно, как это сделать, а главное, зачем — добро пожаловать под кат!
Kodein. Основы
2018-12-04 в 10:10, admin, рубрики: android, dependency injection, Kodein, kotlin, Разработка под androidНе нашел понятных гайдов для тех, кто Kodein
видит в первый раз, а документация не во всех местах прозрачная и последовательная, поэтому хочу поделиться основными возможностями библиотеки с вами. Некоторые возможности библиотеки будут выпущены, но это в основном advanced часть. Здесь же вы найдете всё, чтобы по ходу чтения статьи нормально стартовать и начать внедрять зависимости с Kodein
. Статья базируется на Kodein 5.3.0
, так как Kodein 6.0.0
требует Support Library 28
или AndroidX
и далеко не скоро все перейдут на них, так как многие сторонние библиотеки ещё не предлагают совместимых версий.
Читать полностью »
Angular 6+ полное руководство по внедрению зависимостей. providedIn vs providers:[]
2018-12-03 в 18:59, admin, рубрики: angular, dependency injection, di, inversion of control, javascript, TypeScript, Разработка веб-сайтов
В Angular 6 появился новый улучшенный синтаксис для внедрения зависимостей сервисов в приложение (provideIn). Несмотря на то, что уже вышел Angular 7, эта тема до сих пор остается актуальной. Существует много путаницы в комментариях GitHub, Slack и Stack Overflow, так что давайте подробно разберем эту тему.
В данной статье мы рассмотрим:
- Внедрение зависимостей (dependency injection);
- Старый способ внедрения зависимостей в Angular (providers: []);
- Новый способ внедрения зависимостей в Angular (providedIn: 'root' | SomeModule);
- Сценарии использования provideIn;
- Рекомендации по использованию нового синтаксиса в приложениях;
- Подведем итоги.
Многомодульность и Dagger 2. Лекция Яндекса
2018-08-05 в 14:32, admin, рубрики: dagger 2, dependency injection, multimodality, Блог компании Яндекс, разработка мобильных приложений, Разработка под androidКогда ваше приложение построено на многомодульной архитектуре, приходится посвящать много времени тому, чтобы все связи между модулями были корректно прописаны в коде. Половину этой работы можно поручить фреймворку Dagger 2. Руководитель группы Яндекс.Карт для Android Владимир Тагаков рассказал о плюсах и минусах многомодульности, разных подходах к организации модулей и удобной организации DI внутри них при помощи Dagger 2.
— Меня зовут Владимир, я разрабатываю Яндекс.Карты и сегодня буду рассказывать вам про модульность и второй Dagger.Читать полностью »
Предполагаемые принципы проектирования для Jakarta EE
2018-07-06 в 14:47, admin, рубрики: dependency injection, enterprise, java, java ee, Блог компании Издательский дом «Питер», книги, ПрограммированиеПривет! У нас совсем недавно вышла книга "Изучаем Java EE. Современное программирование для больших предприятий" от немецкого Java-чемпиона Себастьяна Дашнера.
Господин Дашнер активно пишет и выступает на темы, связанные с современной Java EE, поэтому в своем блоге не обошел вниманием и общие принципы проектирования для платформы Jakarta EE, ныне разрабатываемой Eclipse. Перевод именно этой статьи (июньской) мы сегодня предлагаем вашему вниманию.
Читать полностью »
Открытый вебинар «Dependency Injection в Angular»
2018-07-04 в 19:41, admin, рубрики: dependency injection, javascript, Блог компании Отус, ПрограммированиеВсем привет! Наш первый поток курса «Разработчик JavaScript» выпускается уже через десять дней и мы запускаем потихоньку второй поток. Соответственно, мы снова делимся как и полезными материалами, так и проводим открытые уроки, где мы можете познакомится ближе с преподавателями и узнать что-нибудь интересное. Сегодня у нас урок по «Dependency Injection в Angular», который провёл создатель курса Александр Коржиков, где он разбирал основные понятия связанные с паттернами проектирования Dependency Injection — Dependency Injection / Service Locator / Inversion of control.
Внедрение зависимостей в Go
2018-05-29 в 7:34, admin, рубрики: dependency injection, funcorp, Go, golang, java, uber, Блог компании FunCorp, Программирование, разработка мобильных приложенийНедавно я создал небольшой проект на языке Go. После нескольких лет работы с Java я был сильно удивлён тем, как вяло внедрение зависимостей (Dependency Injection, DI) применяется в экосистеме Go. Для своего проекта я решил использовать библиотеку dig от компании Uber, и она меня по-настоящему впечатлила.
Я обнаружил, что внедрение зависимостей позволяет решить множество проблем, с которыми я сталкивался в работе над Go-приложениями: злоупотребление функцией init
и глобальными переменными, чрезмерная сложность настройки приложений и др.
В этой статье я расскажу об основах внедрения зависимостей, а также покажу пример приложения до и после применения этого механизма (посредством библиотеки dig
).Читать полностью »
Инверсия управления в iOS
2018-04-24 в 10:36, admin, рубрики: dependency injection, ioc, iOS, iOS разработка, swift, Блог компании REDMADROBOT, разработка под iOS
Евгений Ёлчев rsi, iOS-тимлид KODE
В последнее время я все чаще слышу о DI. Им интересуются мои студенты в Geek University, его упоминают в чатах. Хотя паттерн далеко не молод, многие не совсем верно его понимают.
Часто под DI подразумевают фреймворк, например, typhoon или swinject. В статье подробно разберем принципы реализации DI, а также принцип IoC. Если интересно, прошу под кат.