Sobes.tech
Junior — Middle

Kotlin Multiplatformтун негизги концепциялары жана аларды кантип ишке ашыруу керектиги жөнүндө айтып бере аласызбы?

sobes.tech AI

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"

Такой подход позволяет переиспользовать бизнес-логику и минимизировать дублирование кода, сохраняя при этом доступ к специфичным возможностям каждой платформы.