Kotlin Multiplatform: Ilyen minek van?

Slides:



Advertisements
Hasonló előadás
HTML enhanced for web apps! Fodor Krisztián
Advertisements

VIRTUÁLIS IDŐKAPSZULA
A/B tesztelés mobilon App!mobile 2013 Körmendy Domonkos.
HISMobile ® – Kórház a zsebben. Háttér  Piaci szituáció és igény  Az orvosok szeretnék elérni a betegeik adatait bárhonnan és bármikor (ágy mellől,
Szoftver Fogalma, típusai.
Mobilitás Web-alkalmazások mobil eszközökre: Mobil értékesítési modul (MobileSales) Mobil szerviz modul (MobileService) Standard web-alkalmazások: ERPPDA.
Aruba Instant Workshop Vállalati bemutató Leading provider of secure mobility for the enterprise Aruba MOVE Architecture Industry’s most secure WLAN.
K-Chat Dr. Szepesvári Csaba Kutatási Alelnök mindmaker.
WordLearner.com -- Learn or Teach Words in Almost Any Language WordLearner.com online és offline nyelvoktatás mobiltelefonon és interneten Benedek Balázs.
„Smart Apps Bigtime” Szalkai László Ozeki Informatikai Kft.
Mobil eszközök alkalmazása vállalati környezetben
mLearning megoldások Moodle környezetben
iOS Android Symbian WebOS Kernel Multi-Touch Multitask.
ASP.NET MVC 3 platform áttekintés
Az ETR technológia DEXTER Informatikai kft..
Kincses Zoltán, Mingesz Róbert, Vadai Gergely
Mérés és adatgyűjtés laboratóriumi gyakorlat Makan Gergely, Mingesz Róbert, Nagy Tamás 2. óra szeptember 9., 10. v
Fejlett Programozási Technológiák II. Világos Zsolt 7. gyakorlat.
A nyelv története, jellemzői A Java platform
Neobotix MP500. Felépítése Ipari kivitel Linux Wifi n CAN Terhelhetőség: 80kg 5,5 km/h Üzemidő: ~10 h Hatótáv: 8km.
Szombathely Dinamikus WEB programozás: PHP és JSP.
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Bátyai Krisztián NetAcademia Oktatóközpont oktató, fejlesztő MCT, MCPD
Line Of Business alkalmazások fejlesztése Windows Presentation Foundation alapokon.
mLearning - A Moodle használata mobil eszközökön
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:
IWiW – második hullám Simó György T-Online Magyarország Zrt, vezérigazgató.
BlueSpot Ingyenes mobil kommunikációs rendszer bluetooth felett.
1 Add az APK-t! Add az APK-t! Automatizált apptesztelés 2013/10/13.
A platform nem létezik Game engine portolás mobilról webre.
Android alkalmazások tesztelése
Komoróczy Tamás 1 Java programozási nyelv A nyelv alapjai.
Mobil kliens az integrációban Magic XPA mobil kliens a SAP és CRM alkalmazásokhoz.
Jegyzetelő Alkalmazás Táblagépekre Farkas Tamás /7 OE-NIK Farkas Tamás.
OKOSTELEFON KÖZÉPRÉTEG, VALÓS IDEJŰ TELJESEN ELOSZTOTT ADATFELDOLGOZÁS
RAD Studio XE5: menük felépítése
NIIFI Networkshop március 31. – április 2.PTE Egyetemi Könyvtár Adatbázisba kerülnek a magyar szakfolyóiratok cikkeinek hivatkozásai Szalai László,
ASZTALI GÉPEK KONTRA TABLETEK Melyiket válasszam? Készítette: Kiss László IALMGR)
Mobilitas Illés Zoltán Heizlerné B. Viktória Dr Illés Zoltán Készült az "Országos koordinációval a.
Multimédiás lejátszóprogram
Közigazgatási és Elektronikus Közszolgáltatások Központi Hivatala
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Tárgy: e-mobil applikációk Mentor: Dr. Zlatko Čović Hallgató: Vadlja Róbert 2015, Szabadka Firefox Open OS.
Mobil operációs rendszerek
Corporate presentation ”quis custodiet ipsos custodes” Avagy ki vigyázza a vigyázókat.
A számítógép részei Hardver és szoftver elemek
Felhőalapú adattárolás Hogy tárolhatunk adatokat „felhő” szolgáltatás segítségével?
PhoneGap Keretrendszer Dudás Dániel Szabadkai Műszaki Szakfőiskola november 24.
Programok készítése és futtatása. Integrált fejlesztői környezet (IDE) tartalmaz:  szövegszerkesztőt a program forráskódjának szerkesztésére,  fordítóprogramot.
Farkas Bálint | Technical Evangelist | Microsoft.
OZEKI. Rábai Gyula ügyvezető igazgató Ozeki Informatikai Kft. Hogyan építsünk és programozzunk Drónokat.
Alkalmazásfejlesztés F#-ban Dunaújvárosi Főiskola Kiss Gyula mérnökinformatikus hallgató Nemzeti Tehetség Program Tehetségútlevél Program „NTP-TÚP ”
Békés megyei Kossuth Lajos Szakképző Iskola
Számítógépes alapismeretek
Farkas Bálint | Technical Evangelist | Microsoft
“Tudásmegosztás és szervezeti problémamegoldás a mesterséges intelligencia korában” Levente Szabados Technológiai Igazgató.
Híd a Windows folyón Balint Farkas Technical Evangelist Microsoft
IoT Workshop - Budapest
Hibernate / EclipseLink / OpenJPA összehasonlítás
Test Automation Kurzus Intro
Új kapukat nyit az IoT a parkolóházak digitalizálásánál
Valódi cross-platform megoldás, vagy újabb prototipizáló eszköz?
Platformfüggetlen mobil alkalmazás az OpenBioMaps projekt keretében
Többplatformos appfejlesztés Xamarinnal és Visual Studióval
MySQL története, részei, felhasználhatóság, PHPMyAdmin
Az API Design és Management evolúciója
refaktorálás a valós életben
Unit tesztelés Swift-ben
AZ UBER NEXTGEN FIZETÉSI PLATFORMJA
Előadás másolata:

Kotlin Multiplatform: Ilyen minek van? Sziasztok! Kotlin Multiplatform: Ilyen minek van?

mito. clever things

mito. clever things Natív = Kotlin && Swift Absztrakció Részleges hozzáférés API-khoz Nem natív widget-ek Nem többszálú Performancia problémák Korlátozott fejlesztői hatáskör Bugok Xamarin C# React Native JavaScript Flutter Dart

mito. clever things Kotlin Többféle fordítási backend JVM compiler JavaScript compiler

mito. clever things Kotlin Többféle fordítási backend JVM compiler JavaScript compiler Native (LLVM) compiler aka. konan (Kotlin Native)

mito. clever things Multiplatform Android Windows Linux OSX Kotlin iOS Raspberry Pi STM32 WASM32 ...

mito. clever things projekt/ +-- android +-- common (2×) +-- ios

Swift/Objective-C/Kotlin UI platform feature-ök Java/Kotlin mito. clever things UI platform feature-ök Swift/Objective-C/Kotlin Üzleti logika Adatmodellek Validáció Hálózati kommunikáció Adattárolás/szerializáció ... UI platform feature-ök Java/Kotlin iOS: Specifikus (stdlib) Common/Shared: Független (stdlib) Android: Specifikus (stdlib)

mito. clever things Expect the actual.

expect fun isMainThread(): Boolean mito. clever things // common (shared) expect fun isMainThread(): Boolean

expect fun isMainThread(): Boolean mito. clever things // common (shared) expect fun isMainThread(): Boolean // Android import android.os.Looper actual fun isMainThread() = Looper.myLooper() == Looper.getMainLooper()

expect fun isMainThread(): Boolean mito. clever things // common (shared) expect fun isMainThread(): Boolean // Android import android.os.Looper actual fun isMainThread() = Looper.myLooper() == Looper.getMainLooper() // iOS import platform.Foundation.NSThread actual fun isMainThread() = NSThread.isMainThread()

mito. clever things Harmadik parti?

mito. clever things Native 1 Teljesen natív a célplatformon (multiplatform ≠ cross-platform) Nincs absztrakció vagy extra külső réteg Natív API-k korlátozás nélkül elérhetőek Egységes nyelv, elősegíti a kódmegosztást platformok között Interoperabilitás (Kotlin ⟷ Java/Obj-C/Swift) 1

mito. clever things Állapot: instabil

mito. clever things https://github.com/JetBrains/kotlinconf-app Multiplatform projekt létező megvalósítása: Android és iOS mobilalkamazás és a hozzátartozó backend: https://github.com/JetBrains/kotlinconf-app

mito. clever things Kösz a figyelmet! https://www.figma.com/file/VRjcDuCTG6PNQDgYSS5WqXyi/Identity?node-id=657%3A15