0Pricing
Kotlin Multiplatform Academy · Урок

Объявление общего модуля Koin

Регистрируйте зависимости в commonMain

«Объявление общего модуля Koin» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Wire Things Together

Your app is full of objects that need each other: a repository needs a client, a use case needs the repository. Dependency injection hands those pieces over for you.

Meet Koin

Koin is a lightweight DI library written in pure Kotlin, so it runs happily in commonMain and works on both Android and iOS. 🎉

Add the Dependency

You pull Koin into your shared module the same way you add any other library, listing the core artifact in your version catalog or build file.

implementation("io.insert-koin:koin-core:3.5.0")

A Module Is a Recipe Book

A Koin module is just a list of recipes telling Koin how to build each dependency. You declare it once and reuse it everywhere.

Write Your First Module

The module { } builder collects your definitions. An empty one is valid; you fill it with recipes next.

val appModule = module {
}

Register with single

Inside the module, single { } registers one shared instance Koin reuses for the whole app, perfect for a repository.

val appModule = module {
    single { UserRepository() }
}

Wire Dependencies with get

When one object needs another, call get() inside the recipe. Koin looks up the matching definition and passes it in automatically.

single { UserRepository(api = get()) }

Order Does Not Matter

You can declare definitions in any order. Koin resolves the graph lazily, so a recipe can safely get() something defined further down.

Keep It in commonMain

Because Koin is multiplatform, place appModule in commonMain. Both your Android and iOS apps then share the exact same wiring.

Group Related Modules

Large apps split definitions into several modules, like a data module and a domain module, then combine them later when starting Koin.

val dataModule = module { single { ApiClient() } }

A Function That Returns It

A common pattern exposes your module from a function, making it easy for each platform to grab the shared definition.

fun appModule() = module {
    single { UserRepository(get()) }
}

Quick Check

Let's lock in what a Koin module does.

Recap

You met Koin, added it to your shared module, and wrote a module that registers dependencies with single and links them using get. One recipe book, both platforms. 🚀

Часто задаваемые вопросы

Урок «Объявление общего модуля Koin» бесплатный?

Да — полный текст урока «Объявление общего модуля Koin» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Чему я научусь в уроке «Объявление общего модуля Koin»?

Регистрируйте зависимости в commonMain Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?

Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Объявление общего модуля Koin»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?

Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Объявление общего модуля Koin
  2. Области single и factory
  3. Запуск Koin на Android и iOS
  4. Внедрение в ViewModels и репозитории
← Назад к Kotlin Multiplatform Academy