Рубрика «dependency injection» - 11

Разработка архитектуры приложения с использованием инверсии зависимости

В этой статье я хочу ещё раз поговорить о разработке архитектуры приложения с использованием инверсии зависимости (Inversion of Control).
Я уже писал на хабре о библиотеке IoC и о Modular. Теперь я пошел ещё дальше и упростил все что только можно и попробую объяснить принципы построения архитектуры. А так же расскажу о новой библиотеке Granula.
Читать полностью »

Как я изобретал велосипед, изучая технологииНеоднократно слышал утверждение, что язык программирования изучать лучше всего в процессе создания чего-либо. Не мог с этим не согласиться, и решил, что это распространяется не только на язык, но и на всякие технологии сосуществующие с этим языком.
Протаптывать неизведанную дорожку самому непросто, гораздо легче изучить, как кто-то протаптывает эту дорожку перед тобой. К изучению документаций у меня не лежит душа, ей я пользуюсь как справочником, а изучать что то с нуля отнимает слишком много времени и сил, так как авторы оной обычно предполагают, что у читателя знания обширнее, практически все что нужно он уже знает. Велосипедные темы же освещают именно процесс обучения, хождение по граблям и все прочее. К сожалению, на интересные мне темы достаточно подробных статей не нашел, изучал урывками, и решил все-таки написать статью сам, в надежде упростить жизнь тем, кто может пойти следом.
Читать полностью »

Вступление

Как все мы знаем javascript это язык в котором очень просто выстрелить себе в ногу. Работая с этим языком уже почти пять лет, я не раз сталкивался с тем, что javascript предоставляет очень скудные инструменты для создания абстракций высокого уровня. А, создавая полноценные MVVM/MVP приложения, сталкиваешься с тем что, основной проблемой является трудность сохранить код и абстракцию в чистоте, не говоря уж о полноценном следовании SOLID принципам.

Со временем я пришел к пониманию, что один из основных паттернов который смог бы мне помочь -это Dependency Injection. И я решил поэкспериментировать с ним в JS.
Конечно, JS не предоставляет инструментов для полноценного следования этому паттерну (элементарное отсутствие тех же рефлекшенов), поэтому я решил поставить для себя несколько Acceptance Criteria, которых я хотел бы достигнуть адаптировав этот паттерн к такой уникальной среде как JS.
Читать полностью »

Этой статьёй я открываю цикл, посвящённый разработке Android-приложений. Но не типичных для Google Play, написанных, очевидно, задней левой mНогой, а приложений корректных и элегантных. В этом деле нам поможет DroidParts — швейцарский нож Android-библиотек с 8 лезвиями:
DroidParts — библиотека для Android 8 in 1

  1. Dependency Injection: инициализация системных и собственных зависимостей;
  2. Object-Relational Mapping для SQLite: CRUD-операции «из коробки»;
  3. Поддержка Fragments, ActionBarSherlock;
  4. Простая (де-)сериализация JSON;
  5. AsyncTasks, IntentService с обработкой Exсeptions;
  6. RESTful HTTP client с поддержкой JSON;
  7. L.og без указания тега, конфигурируемый через AndroidManifest;
  8. Утилиты типа асинхронного http-загрузчика с кешированием, View- и Intent-помощников.

Буквально час назад* увидела свет первая версия библиотеки, но сначала…
Читать полностью »

image

Pluralsight предоставляет условно-бесплатную подписку на данный курс в течение одного месяца. Для того, чтобы получить подписку, необходимо выполнить следующие действия:Читать полностью »

Взвешенно о PHPВ последние дни было достаточно много было сказано разного про PHP. Всё началось с поста Фрактал плохого дизайна и продолжилось некоторыми неловкими попытками защитить любимый язык. Как ни крути, а в статье о «фрактале» — всё факты. Спорить с фактами бессмысленно. Давайте взглянем правде в глаза и объективно постараемся оценить сильные и слабые стороны РНР.

Если честно, то в вопросе PHP самому языку уделяется слишком много внимания. Да, статья «фрактал плохого дизайна» показала многие подводные камни при использования PHP. Но знаете, всем пофиг. Просто за годы использования, мы, разработчики, ни разу не искали подводные камни, и потому уже интуитивно избегаем нечетких конструкций. Да, конечно, примеры в статье абсолютно фееричны, но представляют скорее академическую критику языка. А PHP никогда не был академическим языком и всегда представлял сугубо практическую ценность. На ней и хотелось бы сосредоточиться.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js