Что такое Compose Desktop

«Что такое Compose Desktop» — вопрос из категории Jetpack Compose, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Compose Desktop — это фреймворк для создания кроссплатформенных десктопных приложений с использованием Jetpack Compose. Он позволяет писать UI на Kotlin, используя декларативный подход, аналогичный Android Compose.

Особенности:

  • Работает на Windows, macOS и Linux.
  • Использует Skia для рендеринга (как Chrome и Flutter).
  • Поддерживает темы, анимации и состояние, как в Android Compose.

Пример:

fun main() = application {
    Window(onCloseRequest = ::exitApplication, title = "Compose Desktop") {
        var text by remember { mutableStateOf("Hello, Desktop!") }
        Column(Modifier.fillMaxSize(), Arrangement.Center) {
            Text(text)
            Button(onClick = { text = "Clicked!" }) {
                Text("Click me")
            }
        }
    }
}

Подходит для быстрой разработки UI без привязки к конкретной платформе.