Импортозамещение в IT-сфере давно перестало быть абстрактной концепцией и превратилось в насущную необходимость для многих компаний. Особенно остро стоит вопрос о кроссплатформенной разработке, где долгое время доминировали зарубежные фреймворки. В этом контексте Compose Multiplatform от JetBrains становится не просто технологическим выбором, а стратегическим решением для построения суверенных цифровых продуктов. Опыт первых внедренцев и экспертов показывает, как эта технология помогает создавать современные интерфейсы, оставаясь в экосистеме открытых и доступных инструментов.
Compose Multiplatform — это декларативный фреймворк для построения пользовательских интерфейсов, позволяющий писать UI-код на Kotlin и запускать его на Android, iOS, десктопах (Windows, macOS, Linux) и в вебе. Его корни — в успешном Jetpack Compose для Android, что обеспечивает зрелую идеологию и проверенные практики. Для команд, столкнувшихся с необходимостью ухода от зарубежных решений, этот фреймворк предлагает уникальное сочетание: современный подход, единую кодовую базу и независимость от конкретных вендорских экосистем.
Эксперты выделяют несколько ключевых преимуществ Compose Multiplatform в контексте импортозамещения. Во-первых, это снижение зависимости. Разработка ведется на Kotlin — языке, изначально созданном JetBrains, компанией с сильными корнями в Восточной Европе. Инструментарий (IntelliJ IDEA, Compose Multiplatform plugin) также доступен и продолжает развиваться без рисков внезапных ограничений. Это контрастирует с другими кроссплатформенными решениями, чья судьба может зависеть от политики крупных западных корпораций.
Во-вторых, это кадровый резерв. Kotlin уже несколько лет является официальным языком для Android-разработки, и в СНГ сформировалось большое сообщество разработчиков, владеющих им. Переход на Compose Multiplatform для таких специалистов проходит естественнее, чем освоение совершенно нового стека. Это ускоряет процесс импортозамещения, не требуя длительного и дорогостоящего переобучения команды.
Опыт внедрения в одной из крупных российских fintech-компаний показал интересные результаты. Команда стояла перед задачей переписать мобильное приложение для iOS, ранее разработанное на Swift, и синхронизировать его функциональность с существующим Android-приложением на Compose. Выбор пал на Compose Multiplatform для iOS. Главным вызовом, по словам tech lead проекта Анны Смирновой, стала работа с нативными модулями и специфичными для iOS API. «Мы не ставили цель написать 100% кода на Kotlin. Мы использовали ожидаемый (expected) и фактический (actual) механизм для платформо-специфичной реализации. Например, для работы с Keychain на iOS мы написали небольшой нативный оберточный код на Swift, который легко вызывался из общего Kotlin-модуля. Это дало нам и гибкость, и производительность», — делится она.
Важным этапом была интеграция с дизайн-системой компании. Compose, будучи декларативным фреймворком, идеально подошел для описания компонентов (кнопок, полей ввода, карточек) в виде переиспользуемых композаблов. Единая дизайн-система, собранная в общем модуле, гарантировала идентичный внешний вид и поведение на обеих платформах, что значительно упростило жизнь дизайнерам и QA-инженерам.
Еще один кейс пришел из сфере EdTech. Компания разрабатывала интерактивное обучающее приложение для школьников, которое должно было работать на недорогих Android-планшетах и в веб-версии на школьных компьютерах. Использование Compose Multiplatform для Desktop и Web позволило создать десктопное приложение с идентичной веб-интерфейсу логикой. Для веба код компилировался в JavaScript с помощью Kotlin/JS. Руководитель проекта Дмитрий Волков отмечает: «Производительность в вебе на сложных анимациях была нашим главным опасением. Однако использование Skia через Canvas в Compose for Web дало отличный результат даже на слабых машинах. Мы, конечно, оптимизировали некоторые тяжелые композаблы, но в целом фреймворк показал себя готовым к production».
Конечно, путь не был усыпан розами. Эксперты отмечают текущие ограничения. Экосистема библиотек, адаптированных для Multiplatform, пока менее богата, чем для нативных платформ или того же Flutter. Многие решения приходится писать самостоятельно, особенно для взаимодействия со сложными платформенными сервисами (Push-уведомления, глубокие интеграции с OS). Сообщество активно растет, но количество готовых решений в открытом доступе пока уступает мастодонтам рынка.
Еще один совет от практиков — не стремиться к абсолютной кроссплатформенности с первого дня. Начинать стоит с общей бизнес-логики (Kotlin Multiplatform) и UI-логики (Compose), оставляя реализацию платформо-специфичных фич на потом. Это позволяет быстро получить работающий прототип и постепенно наращивать функциональность.
В долгосрочной перспективе Compose Multiplatform видится экспертам как один из самых перспективных фреймворков для построения суверенного стека. Его развитие активно поддерживается JetBrains и открытым сообществом. Технология позволяет создавать конкурентноспособные, производительные приложения с современным UI, не попадая в зависимость от непредсказуемых внешних факторов. Для компаний, вставших на путь технологического суверенитета, это не просто инструмент, а стратегический актив, позволяющий контролировать свою цифровую судьбу.
Кейс Compose Multiplatform для импортозамещения: опыт экспертов
Анализ практического опыта использования фреймворка Compose Multiplatform (Kotlin) как стратегического инструмента для импортозамещения в кроссплатформенной разработке. В статье рассматриваются реальные кейсы, преимущества, вызовы и советы от экспертов, внедривших эту технологию.
171
2
Комментарии (6)