Junior — Middle
Ar galite papasakoti apie Kotlin Multiplatform pagrindines koncepcijas ir kaip jos įgyvendinamos?
sobes.tech AI
Atsakymas iš AI
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"
Такой подход позволяет переиспользовать бизнес-логику и минимизировать дублирование кода, сохраняя при этом доступ к специфичным возможностям каждой платформы.