Sobes.tech
Назад к вопросам
Junior — Middle
67

Можешь рассказать о ключевых концепциях Kotlin Multiplatform и как они реализуются?

Ответ от нейросети

sobes.tech 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"

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