Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kotlin Native: новые перспективы — Дмитрий Гряз...

AvitoTech
November 25, 2017

Kotlin Native: новые перспективы — Дмитрий Грязин (Avito)

Цель доклада — дать информацию о возможностях и развитии технологии Kotlin Native. Вместе с ней для разработчиков открываются перспективы продуктовой мультиплатформенной разработки, охватывающей backend, Android, iOS и web. Это означает:
— прозрачность кодовой базы, написанной на общем языке;
— возможность переиспользования кода между платформами;
— единые тесты для платформенно-независимого кода.
Доклад будет содержать обзор актуальной версии Kotlin Native, (v0.4).

Kotlin Night Moscow
25/11/2017

AvitoTech

November 25, 2017
Tweet

More Decks by AvitoTech

Other Decks in Technology

Transcript

  1. Kotlin native сегодня Могу ли я: - Использовать С библиотеки?

    - Писать Android приложения? - Писать Ios приложения? - Писать Android / Ios приложения? 22
  2. С библиотеки cinterop → .klib CPointer<T> CPointer<CPointerVar<ByteVar>> COpaquePointer CValuesRef<T> CValue<T>

    StableObjPtr 32 .reinterpret<IntVar>() nativeHeap.alloc nativeHeap.allocArray nativeHeap.free
  3. С библиотеки cinterop → .klib CPointer<T> CPointer<CPointerVar<ByteVar>> COpaquePointer CValuesRef<T> CValue<T>

    StableObjPtr 33 .reinterpret<IntVar>() nativeHeap.alloc nativeHeap.allocArray nativeHeap.free memScoped { }
  4. С библиотеки cinterop → .klib CPointer<T> CPointer<CPointerVar<ByteVar>> COpaquePointer CValuesRef<T> CValue<T>

    StableObjPtr 34 .reinterpret<IntVar>() nativeHeap.alloc nativeHeap.allocArray nativeHeap.free memScoped { } staticCFunction { } ...
  5. 35

  6. Kotlin native сегодня Могу ли я: - Использовать С библиотеки?

    ДА, но… - Писать Android приложения? ДА, но... 39
  7. iOS приложения - CMake - cinterop - No XCode support.

    CLion? - @ExportObjCClass - @konan.internal.Intrinsic external fun <T : ObjCObjectBase> T.initBy 45
  8. Kotlin native сегодня Могу ли я: - Использовать С библиотеки?

    ДА, но… - Писать Android приложения? ДА, но… - Писать Ios приложения? ДА, но… 46
  9. 48

  10. 49

  11. Kotlin native сегодня Могу ли я: - Использовать С библиотеки?

    ДА, но… - Писать Android приложения? ДА, но… - Писать Ios приложения? ДА, но… - Писать Android / Ios приложения? ДА, но... 50