первое условно-рабочее превью моего DI в деле:
https://github.com/KotlinBy/awesome-kotlin/commit/a6aeb0b348c80b623d749c88a600155b428bcdcd?branch=a6aeb0b348c80b623d749c88a600155b428bcdcd&diff=split
Ты, я думаю, догадываешься, каким будет первый вопрос :)
Похоже на то, что я в DataForge сделал. Только я не очень понял, где вызов
Да, отличие от koin в том что у меня все построенно на "провайдерах". Т.е. инжектим мы тип, например просто интерфейс Test2, и чтобы его создать в Koin можно передать класс, в komodo-di же можно передать функцию, или конструктор - что одно и тоже:
а как там suspend fun работает? то есть, получение тоже всегда suspend?
Поверх DI я делаю обертку-фреймворк, куда часть функциональности завернута. Входная точка вот тут.
Да, потому что провайдеры могут быть suspend
Ага, андроид, похоже, мимо. :> Я понимаю, что он вряд ли одной из целей есть)
Вообще будет работать, там даже reflection-full не понадобился, хотя пока он есть в зависимостях)
Обсуждают сегодня