Энциклопедия интеропа: Kotlin-Swift-Interopedia

15 ИЮНЯ 2022

------------------------------------------------------------------------

Наш телеграм-канал: t.me/@mailsgun_online

Youtube: youtube.com/@mailsgun_online

------------------------------------------------------------------------

Обновить

Рейтинг

сегодня в 09:00

Как и множество других компаний, мы в hh.ru с интересом приглядываемся к Kotlin Mobile Multiplatform. Особенно нас заинтересовал вопрос, связанный с удобством работы iOS-разработчиков с общим SDK. Наши iOS-инженеры пишут на Swift, поэтому нам важно было убедиться: то публичное API, которое мы сформируем, будет выглядеть на Swift так же удобно и классно, как и в Kotlin. Мы провели объёмный ресёрч, в рамках которого подготовили специальный репозиторий «Kotlin-Swift-Interopedia», которым и хотим поделиться с сообществом.

На портале документации KMM можно найти страницу, посвящённую интеропу между Kotlin и Swift. Но в ней не рассматриваются все возможные конструкции языка Kotlin-а, поэтому даже после чтения документации оставалось множество вопросов.

Как поведут себя abstract-классы? Что будет с sealed-интерфейсами? Удобно ли мне будет работать с лямбдами в качестве аргументов функций? Enum-ы превратятся в Swift-овые enum-ы?

Чтобы ответить на эти и множество других вопросов, мы и создали нашу «интеропедию». В ней мы собрали в единую табличку часто встречающиеся фичи языка Kotlin и указали, чем можно пользоваться без проблем, с какими придётся произвести дополнительные манипуляции , а какие пока что не работают совсем. Мы запилили этот репозиторий, чтобы помочь всем, кто тоже проводит ресёрч KMM, определиться с использованием этой технологии.

Относительно недавно на Хабре анонсировали специальный инструмент, который может немного улучшить опыт iOS-разработчиков — плагин moko-kswift от компании IceRock. Но даже с его помощью не все боли могут быть исправлены прямо сейчас.

Изучайте наш репозиторий, предлагайте дополнения или исправления, мы будем рады вашим комментариям и Pull Request-ам. Пишите в комментариях: сталкивались ли вы с проблемами интеропа, как их решали, как много времени вы тратите, обсуждая публичное API вашего общего кода.

Всего голосов 5: ↑5 и ↓0+5
  • 15 марта в 08:40
    Всего голосов 25: ↑24 и ↓1+23

    Просмотры17K

  • 22 июля 2020 в 09:35
    Всего голосов 13: ↑12 и ↓1+11

    Просмотры3.5K

  • 6 июня 2019 в 16:20
    Всего голосов 18: ↑18 и ↓0+18

    Просмотры7.5K

  • сегодня в 00:49
    Всего голосов 40: ↑39 и ↓1+38

    Просмотры1.9K

  • вчера в 18:35
    Всего голосов 32: ↑28 и ↓4+24

    Просмотры4.2K

  • вчера в 16:00
    Всего голосов 24: ↑24 и ↓0+24

    Просмотры3.9K

  • вчера в 14:01
    Всего голосов 32: ↑28 и ↓4+24

    Просмотры5.2K

  • вчера в 15:16
    Всего голосов 14: ↑14 и ↓0+14

    Просмотры544

  • сегодня в 09:00
  • 31 августа в 09:00
  • 24 августа в 09:00
  • 12 августа в 10:21
  • 5 августа в 11:03

Source: habr1

Ну и напоследок напоминаю вам о нашем новом проекте vkserfing bot.