#архитектура #di #модуляризация
Модульность и DI в современном Android-приложении Яндекса
Автор рассказывает о реализации подхода работы с DI в Яндекс Картах, который отказывается от DI в Feature модулях и делает единую организацию с зависимостями из них. Рассматриваются подробно все случаи и навигация между фичами
🔗 Пример подхода модуляризации
Видео по теме от автора
📺 Как мы делаем Яндекс.Карты для Android: DI (~ 1 час)
📺 Школа мобильной разработк Яндекс. DI (~ 1 час)
Модульность и DI в современном Android-приложении Яндекса
Автор рассказывает о реализации подхода работы с DI в Яндекс Картах, который отказывается от DI в Feature модулях и делает единую организацию с зависимостями из них. Рассматриваются подробно все случаи и навигация между фичами
🔗 Пример подхода модуляризации
Видео по теме от автора
📺 Как мы делаем Яндекс.Карты для Android: DI (~ 1 час)
📺 Школа мобильной разработк Яндекс. DI (~ 1 час)
#di
Вышел Dagger 2.41
Новый релиз улучшил процессор Dagger, исправили баги и больше никаких фичей. Основной приоритет команды — это работа над поддержкой KSP
Вышел Dagger 2.41
Новый релиз улучшил процессор Dagger, исправили баги и больше никаких фичей. Основной приоритет команды — это работа над поддержкой KSP
Forwarded from Kotlin Broadcast
#di
Annotations for Koin (4 мин)
Первая бета-версия аннотаций для Koin, которая позволит аннотировать зависимости, а они будут добавляться в сгенерированный koin модуль. Работает на основе KSP
⛔ привязка к версии Kotlin
⛔ дольше компиляция
✅ меньше кода
Annotations for Koin (4 мин)
Первая бета-версия аннотаций для Koin, которая позволит аннотировать зависимости, а они будут добавляться в сгенерированный koin модуль. Работает на основе KSP
⛔ привязка к версии Kotlin
⛔ дольше компиляция
✅ меньше кода
#di
Dagger + Anvil: Learning to Love Dependency Injection on Android (9 мин)
Автор статьи делится опытом использования Anvil + Dagger в Android проекте.
Anvil - подобное Hilt решения для упрощения работы с Dagger. Автор - Square
Dagger + Anvil: Learning to Love Dependency Injection on Android (9 мин)
Автор статьи делится опытом использования Anvil + Dagger в Android проекте.
Anvil - подобное Hilt решения для упрощения работы с Dagger. Автор - Square
#compose #di
Dagger/Hilt vs Koin for Jetpack Compose Apps (8 мин)
Сравнение Hilt и Koin для приложений с Compose, где нет Fragment, а только функции с UI
Dagger/Hilt vs Koin for Jetpack Compose Apps (8 мин)
Сравнение Hilt и Koin для приложений с Compose, где нет Fragment, а только функции с UI
Ребята из Klima решили уйти от Dagger и Hlit на Android в пользу чего-то мультиплатформенного. Отказались от Koin и выбрали Kotlin Inject, опытом миграции на который и делятся в статье.
#di
#di
Kodein - одна из возможных альтернатив для Dagger. Разработчик из ДоДо делится опытом использования этого DI в Drinkit: плюсы и минусы, принципы, DSL, как пользоваться Kodein, скоупы, многомодульность и др.
Статья тут (11 мин)
#di #kotlin
Статья тут (11 мин)
#di #kotlin
Forwarded from Kotlin Broadcast (Кирилл Розов)
Быть в авангарде в разработке — жизненная необходимость. Поэтому многие проекты уже переходят на Jetpack Compose, а самые смелые и продвинутые даже выпускают приложения на KMP. Дринкит (проект ДоДо) тоже активно мигрирует на Jetpack Compose (без KMP).
На основе этого опыта рассказывают про DI, а именно Kodein, в статье (2 часть, 10 мин). Первая часть тут (11 мин)
#di #android #compose #kmp
На основе этого опыта рассказывают про DI, а именно Kodein, в статье (2 часть, 10 мин). Первая часть тут (11 мин)
#di #android #compose #kmp
Если вам интересно узнать как под капотом работает Dependency Injection библиотека, то вот вам статья (EN, 17 мин)! В рамках статьи еще показывается и как построить свой DI. Разбираются примеры Google Guice, Dagger 1 и 2
#di @android_broadcast
#di @android_broadcast
В Hilt 1.2.0 теперь можно делать такое c ViewModel
Для тех кто не знаком с Assisted Injection читайте документацию Dagger
#hilt #di #dagger
Для тех кто не знаком с Assisted Injection читайте документацию Dagger
#hilt #di #dagger
Статья (3м) с описанием как упростить inject параметров с помощью библиотеки автора Anvil Utils
#anvil #dagger #di
#anvil #dagger #di
Forwarded from Kotlin Broadcast
Вышло обновление Koin Annotations 1.4
👉 Поддержка сканирования модулей сквозь Gradle модули. Раньше каждый работал отдельно
👉 Поддержка ViewModel в Compose с помощью аннотации @KoinViewModel
👉 Поддержка expect зависимостей из общего кода
👉 Объявление значений Koin Property через top level property в коде
👉 Улучшения проверки графа в момент компиляции кода
👉 Поддержка Kotlin WASM
👉 Поддержка модулей в object
👉 Поддержка Koin Type Qualifier
Пример с использованием свежей версии можно найти тут
Могу добавить что вот такое решение и сразу надо было нужно делать для DI на KMP, а не так много динамики давать. Объявление зависимостей в рантайме нужно не так много кому, зато можно повысить надежность работы с кодом.
Видео на тему косяков Koin я тоже уже готовлю 😁
#koin #di #ksp
👉 Поддержка сканирования модулей сквозь Gradle модули. Раньше каждый работал отдельно
👉 Поддержка ViewModel в Compose с помощью аннотации @KoinViewModel
👉 Поддержка expect зависимостей из общего кода
👉 Объявление значений Koin Property через top level property в коде
👉 Улучшения проверки графа в момент компиляции кода
👉 Поддержка Kotlin WASM
👉 Поддержка модулей в object
👉 Поддержка Koin Type Qualifier
Пример с использованием свежей версии можно найти тут
Могу добавить что вот такое решение и сразу надо было нужно делать для DI на KMP, а не так много динамики давать. Объявление зависимостей в рантайме нужно не так много кому, зато можно повысить надежность работы с кодом.
Видео на тему косяков Koin я тоже уже готовлю 😁
#koin #di #ksp
Forwarded from Kotlin Broadcast
Нашел Cheat Sheet от Kotzilla и инструкцию по миграции с Dagger/Hilt. на Koin (можно использовать в KMP проектах)
Чтобы вам не регаться я нашел прямую ссылку
#koin #hilt #android #di
Чтобы вам не регаться я нашел прямую ссылку
#koin #hilt #android #di
Media is too big
VIEW IN TELEGRAM
Я использую Koin еще с самой первой версии, он неплохо справляется с небольшими проектами, но дальше требует работы как самурай. В видео для патронов рассказываю, что не так с Koin, как этого избегаю и какой DI нужен для KMP.
Видео доступно на Boosty и по подписке в Telegram.
#AndroidBroadcast #koin #di #kmp #android
Please open Telegram to view this post
VIEW IN TELEGRAM
Передача данных между фрагментом и BottomSheetDialogFragment с использованием Dagger и Navigation Component (2м) - статья с рецептом с упором на код
#fragment #dagger #jetpack #di
#fragment #dagger #jetpack #di
Разбор(9м) как под капотом работает Dagger, Koin, Hilt и как написать свой простой DI
#di #underthehood
#di #underthehood
С выходом новой версии Koin хочу напомнить вам про его боли и проблемы, которые он несет за собой. Смотрите видео
Telegram
Android Broadcast
📱 За что я ненавижу Koin или чего стоит избегать при его использовании (12 мин)
Я использую Koin еще с самой первой версии, он неплохо справляется с небольшими проектами, но дальше требует работы как самурай. В видео для патронов рассказываю, что не так…
Я использую Koin еще с самой первой версии, он неплохо справляется с небольшими проектами, но дальше требует работы как самурай. В видео для патронов рассказываю, что не так…
Media is too big
VIEW IN TELEGRAM
Обзор библиотеки Kotlin Inject - DI для KMP, API которого аналогично Dagger. В видео происходит демонстрация возможностей, сравнение с другими DI и личное мнение о том стоит ли использовать эту библиотеку в проде.
Видео доступно платным подписчикам на Boosty и через Tribute бота в Telegram
#видео #kmp #dagger #di #koin
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Kotlin Broadcast
Вышел Koin Annotations 1.4.0 Stable
👉 Создание модулей на старте
👉 Поддержка WASM
👉 Поддержка Qualifier
👉 Поддержка object модулей
👉 Сканирование множества модулей для поиска объявление зависимостей
👉 Обновили документацию для KMP
👉 Улучшили валидацию объявлений во время компиляции
👉 Рефакторинг кодогенерации для KMP проектов для решения багов и улучшения скорости работы
#koin #di #wasm
👉 Создание модулей на старте
👉 Поддержка WASM
👉 Поддержка Qualifier
👉 Поддержка object модулей
👉 Сканирование множества модулей для поиска объявление зависимостей
👉 Обновили документацию для KMP
👉 Улучшили валидацию объявлений во время компиляции
👉 Рефакторинг кодогенерации для KMP проектов для решения багов и улучшения скорости работы
#koin #di #wasm