Kotlin и Compose Multiplatform в production: реальные примеры использования
От интеграции в существующие приложения и совместного использования логики приложения до создания новых кроссплатформенных приложений — Kotlin Multiplatform стал технологией выбора для многих компаний. Эти команды используют преимущества KMP, чтобы быстрее выпускать продукты и снижать затраты на разработку.
Все больше компаний также внедряют Compose Multiplatform — декларативный UI-фреймворк на базе Kotlin Multiplatform и Jetpack Compose от Google. С стабильным выпуском для iOS Compose Multiplatform завершает эту картину, превращая KMP в полноценное решение для кроссплатформенной мобильной разработки.
По мере роста популярности в этой статье рассматривается применение Kotlin Multiplatform в production в различных отраслях и командах с разной организационной структурой.
Примеры использования Kotlin Multiplatform в зависимости от типа бизнеса и команды
Вот несколько способов, которыми разные команды используют Kotlin Multiplatform для решения различных задач проектов:
Стартапы, начинающие новый проект с нуля
Стартапы часто работают с ограниченными ресурсами и в условиях жестких сроков. Чтобы повысить эффективность и рентабельность разработки, им выгодно создавать приложения сразу для нескольких платформ на основе общей кодовой базы — особенно на ранних этапах разработки продукта или MVP, когда критически важно быстро выйти на рынок.
Для компаний, которые хотят совместно использовать и логику, и UI, Kotlin Multiplatform с Compose Multiplatform предлагает идеальное решение. Можно начать с общего UI и быстро создавать прототипы. Также можно сочетать нативные UI с общими. Благодаря этому KMP с Compose Multiplatform идеально подходит для новых проектов и помогает стартапам находить баланс между скоростью, гибкостью и высококачественным нативным интерфейсом.
Примеры:
Instabee перенесла логику и UI своего приложения для Android на Kotlin Multiplatform с Compose Multiplatform. Эффективно используя кодовую базу Android, компания смогла за короткое время выпустить приложение для iOS.
Respawn Pro разрабатывает приложение для отслеживания привычек и повышения продуктивности. Приложение для iOS создано с помощью Compose Multiplatform, при этом 96% его кода используется совместно с Android.
Малый и средний бизнес
В малом и среднем бизнесе часто работают небольшие команды, поддерживающие зрелые продукты с широкими возможностями. Kotlin Multiplatform позволяет совместно использовать основную логику, сохраняя нативный внешний вид и поведение, которых ожидают пользователи. Используя существующие кодовые базы, такие команды могут ускорить разработку, не жертвуя удобством для пользователей.
KMP также позволяет гибко и постепенно внедрять кроссплатформенные возможности. Это особенно эффективно для команд, которые развивают существующие приложения или запускают новые функции: технология помогает сократить время разработки и накладные расходы, сохраняя при необходимости платформенные настройки.
Примеры:
Down Dog использует стратегию «максимум общего кода на Kotlin» для своего приложения, которое позволяет заниматься йогой в студийном формате на мобильных устройствах. Компания совместно использует различные вспомогательные компоненты между клиентами и серверами, а также большую часть клиентского кода с помощью Kotlin Multiplatform. Команде удалось значительно ускорить разработку приложения, сохранив представления только для нативных платформ.
Doist использовала Kotlin Multiplatform в своем отмеченном наградами приложении для ведения списков задач Todoist. Команда совместно использовала ключевую логику между Android и iOS, чтобы обеспечить одинаковое поведение и упростить разработку. KMP внедрялся постепенно, начиная с внутренних библиотек.
Крупные компании, которым необходимо обеспечить одинаковую работу приложений на разных устройствах
Крупные приложения обычно имеют обширные кодовые базы, постоянно пополняются новыми функциями и содержат сложную бизнес-логику, которая должна одинаково работать на всех платформах. Kotlin Multiplatform поддерживает постепенную интеграцию, позволяя командам внедрять его поэтапно. А поскольку разработчики могут использовать уже имеющиеся навыки Kotlin, применение KMP избавляет их от необходимости осваивать новые технологические стеки.
Примеры: Forbes, McDonald’s, Google Docs, Philips, VMware, Cash App, Wonder App от Baidu
Агентства
Работая с клиентами из разных сфер, агентства и консалтинговые компании должны учитывать широкий спектр требований к платформам и бизнес-целей. Возможность повторно использовать код с Kotlin Multiplatform особенно ценна для команд, которые ведут несколько проектов в сжатые сроки и при ограниченных инженерных ресурсах. Внедрение KMP позволяет агентствам ускорить выпуск решений и обеспечить одинаковую работу приложений на разных платформах.
Примеры:
Touchlab специализируется на кроссплатформенной разработке и консалтинге по Kotlin Multiplatform. Touchlab также создает инструменты, упрощающие разработку для iOS, например SKIE, который улучшает API Swift, доступный из Kotlin, и плагин Kotlin для Xcode.
IceRock — аутсорсинговая компания, которая использует Kotlin Multiplatform для разработки приложений для своих клиентов. Портфолио компании охватывает различные бизнес-задачи и включает обширную коллекцию библиотек Kotlin Multiplatform с открытым исходным кодом, упрощающих разработку на этой платформе.
Mirego, команда полного цикла разработки цифровых продуктов, использует Kotlin Multiplatform, чтобы запускать одну и ту же бизнес-логику в веб-приложениях, iOS, tvOS, Android и Amazon Fire TV. KMP позволяет упростить разработку и при этом максимально использовать возможности каждой платформы.
Компании, выходящие на новые рынки
Некоторые компании хотят выйти на новые рынки, запуская приложения на платформах, для которых они ранее не разрабатывали продукты, например перейти от разработки только для iOS к поддержке Android или наоборот.
KMP помогает использовать существующий код и практики разработки для iOS, сохраняя нативную производительность и гибкость UI на Android. Если вы хотите сохранить пользовательский опыт, специфичный для каждой платформы, и воспользоваться существующими знаниями и кодом, KMP может стать идеальным долгосрочным решением.
Пример: Instabee использовала Kotlin Multiplatform с Compose Multiplatform для переноса логики и UI своего приложения для Android. Это позволило компании быстро выйти на рынок iOS, повторно используя значительную часть существующей кодовой базы Android.
Команды, разрабатывающие комплекты средств разработки (SDK)
Общий код на Kotlin компилируется в платформенные бинарные файлы (JVM для Android, нативный код для iOS) и легко интегрируется в любой проект. Он обеспечивает гибкость: можно без ограничений использовать платформенные API, а также выбирать между нативным и кроссплатформенным UI. Благодаря этим возможностям Kotlin Multiplatform отлично подходит для разработки мобильных SDK. С точки зрения потребителя ваш SDK на Kotlin Multiplatform будет работать как обычная платформенная зависимость, при этом сохраняя преимущества общего кода.
Пример: Philips использует Kotlin Multiplatform в мобильном SDK своей цифровой платформы HealthSuite, что ускоряет разработку новых функций и улучшает взаимодействие между разработчиками Android и iOS.
Примеры использования Kotlin Multiplatform в разных отраслях
Универсальность Kotlin Multiplatform подтверждается широким спектром отраслей, где технология применяется в production. От финансовых технологий до образования — KMP с Compose Multiplatform используют во многих типах приложений. Вот несколько примеров из разных отраслей:
Финансовые технологии
Финансовые приложения часто содержат сложную бизнес-логику, защищенные рабочие процессы и строгие требования к соответствию нормативам. Все это необходимо реализовать одинаково на разных платформах. Kotlin Multiplatform помогает объединить основную логику в одной кодовой базе, снижая риск несоответствий между платформами. Технология обеспечивает более быстрое достижение паритета функций между iOS и Android, что крайне важно для приложений-кошельков и платежных приложений.
Примеры: Cash App, Bitkey от Block, Worldline
Медиа и издательское дело
Для медиаприложений и приложений, ориентированных на контент, важны быстрый выпуск функций, единообразный пользовательский опыт и возможность настраивать UI под каждую платформу. Kotlin Multiplatform позволяет командам совместно использовать основную логику для лент контента и разделов рекомендаций, сохраняя полный контроль над нативным UI. Это ускоряет разработку, сокращает затраты на дублирование кода и обеспечивает паритет между платформами.
Управление проектами и продуктивность
От общих календарей до совместной работы в реальном времени — приложения для повышения продуктивности требуют богатой функциональности, которая должна одинаково работать на всех платформах. Kotlin Multiplatform помогает командам объединить эту сложную функциональность в одной общей кодовой базе и обеспечить единообразные возможности и поведение на всех устройствах. Благодаря такой гибкости команды могут быстрее выпускать обновления и поддерживать единый пользовательский опыт на разных платформах.
Транспорт и мобильность
Сервисы заказа поездок, доставки и мобильности получают преимущества от Kotlin Multiplatform, совместно используя общие возможности в приложениях для водителей, пассажиров и продавцов. Основную логику таких сервисов, как отслеживание в реальном времени, оптимизация маршрутов или чат в приложении, можно написать один раз и использовать на Android и iOS, обеспечивая одинаковую работу для всех пользователей.
Образовательные технологии
Образовательные приложения должны обеспечивать удобный и единообразный учебный процесс как на мобильных устройствах, так и в вебе, особенно для большой распределенной аудитории. Объединяя алгоритмы обучения, викторины и другую бизнес-логику с помощью Kotlin Multiplatform, такие приложения обеспечивают одинаковый учебный процесс на всех устройствах. Совместное использование кода может значительно повысить производительность и единообразие. Например, Quizlet перенесла общий код с JavaScript на Kotlin и добилась заметного ускорения работы приложений для Android и iOS.
Примеры: Duolingo, Quizlet, Chalk, Memrise, Physics Wallah
Электронная коммерция
Создание кроссплатформенных возможностей для онлайн-покупок требует баланса между общей бизнес-логикой и нативными функциями, такими как платежи, доступ к камере и карты. Kotlin Multiplatform с Compose Multiplatform позволяет командам совместно использовать бизнес-логику и UI на разных платформах, сохраняя возможность применять платформенные компоненты там, где это необходимо. Такой гибридный подход ускоряет разработку, обеспечивает единообразный пользовательский опыт и позволяет гибко интегрировать важные нативные функции.
Примеры: Balary Market, Markaz
Социальные сети и сообщества
В социальных сетях важно своевременно выпускать функции и обеспечивать единообразное взаимодействие, чтобы сообщества оставались активными и связанными между устройствами. Ключевая логика взаимодействия может включать обмен сообщениями, уведомления или планирование событий. Например, Meetup, помогающий пользователям находить местные группы, события и мероприятия, благодаря KMP смог выпускать новые функции одновременно на разных платформах.
Пример: Meetup
Здоровье и хорошее самочувствие
Будь то проведение занятия по йоге или синхронизация данных о здоровье между устройствами, приложения для хорошего самочувствия должны быстро реагировать и надежно работать на разных платформах. Таким приложениям часто нужно совместно использовать основную функциональность, например логику тренировок и обработку данных, сохраняя полностью нативный UI и платформенные интеграции, такие как датчики, уведомления или API для работы с данными о здоровье.
Примеры: Respawn Pro, Fast&Fit, Philips, Down Dog
Почтовые службы
Хотя это и не самый распространенный вариант использования, Kotlin Multiplatform внедрила даже национальная почтовая служба с 377-летней историей. Норвежская Posten Bring использует KMP, чтобы объединить сложную бизнес-логику в десятках фронтенд- и бэкенд-систем. Это помогает упростить рабочие процессы и значительно сократить срок запуска новых сервисов — с месяцев до дней.
Пример: Posten Bring
Эти примеры показывают, что Kotlin Multiplatform можно использовать практически в любой отрасли и для приложений самых разных типов. Разрабатываете ли вы финансовое приложение, решение для мобильности, образовательную платформу или что-то другое, Kotlin Multiplatform позволяет совместно использовать столько кода, сколько целесообразно для проекта, не жертвуя нативным пользовательским опытом. Также ознакомьтесь с обширным списком примеров внедрения KMP, в котором представлены многие другие компании, использующие эту технологию в production.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/multiplatform/use-cases-examples.html