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

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