Как стать автором
Обновить

Kotlin Multiplatform перешёл в stable. Что это значит?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров8.9K
Всего голосов 29: ↑28 и ↓1+29
Комментарии14

Комментарии 14

Я думаю для многих KMP - это KM Player

Особенно учитывая, что официальное сокращение Kotlin Multiplatform Mobile - KMM

Compose Multiplatform для Android и десктопной версии стабилен

Что вы называете desktop? Windows? MacOS? Linux? GTK? Qt? X11? Wayland? OpenGL? Vulkan?

Ага, более того, в отличии от мобильных платформ, на десктопе часто приходится отображать данные в табличной представлении, а КМР вообще в эту степь не могёт.

Все-таки не нужно смешивать KMP и Compose multiplatform. KMP не нацелен на реализацию кроссплатформенного UI.

А различия верстки на мобильном устройстве и десктопе придется учитывать при использовании любой технологии. Но это не значит что нельзя создать адаптивную верстку и переиспользовать UI-элементы.

Из платформ поддерживаются Windows, MacOS, Linux. В Compose Multiplatftorm для отрисовки используется Skia. В качестве skia backend могут быть использованы OpenGL/Vulkan/Metal/DirectX

В фреймворке Flutter Skia также почти везде раньше использовалась, но стали уходить в сторону Impeller в силу некоторых минусов Skia. Есть ли хотябы намечающиеся тренды аналогично в KMP?

По этому поводу уже заведено несколько issue 1, 2

Вчера JB провели вебинар и ответили на этот вопрос. Не планируют в ближайшее время, сейчас фокус на другом

Я понимаю, что я скорее всего не ваша целевая аудитория, но все же было бы здорово, если бы в начале статьи был краткий экскурс что такое KMP.

Вопрос, который не дает мне покоя, а именно презентеры. В android обычно это viewmodel. Какое решение будет лучшим для KMP? Для десктопа viewmodel очевидно не нужен, но это означает, что эту часть придется писать индивидуально для платформы, отдельно для android и десктопа (десктоп тут как пример). Как это решается?

ViewModel может использоваться не только для пережития ЖЦ вьюхи как в андроиде, но и как архитектурная сущность. Мы используем ViewModel в KMP-части, они шарятся между ios и android. Поэтому с этим проблем нет.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий