Junior — Middle
Kotlin Multiplatform ning asosiy tushunchalari va ularni qanday amalga oshirilishini aytib berishingiz mumkinmi?
sobes.tech AI
AIdan javob
Kotlin Multiplatform (KMP) позволяет писать общий код, который может работать на разных платформах: Android, iOS, JVM, JavaScript и других. Основные концепции:
- Общий (common) код — код, который пишется один раз и используется на всех платформах.
- Платформенно-специфичный код — код, реализующий особенности конкретной платформы (например, доступ к API iOS или Android).
- expect/actual — механизм, позволяющий объявлять в общем коде интерфейсы или функции с ключевым словом
expect, а реализовывать их в платформенно-специфичных модулях с помощьюactual.
Пример:
// commonMain
expect fun getPlatformName(): String
// androidMain
actual fun getPlatformName() = "Android"
// iosMain
actual fun getPlatformName() = "iOS"
Такой подход позволяет переиспользовать бизнес-логику и минимизировать дублирование кода, сохраняя при этом доступ к специфичным возможностям каждой платформы.