Seminare
Seminare

Kotlin Multiplatform (KMP): Gemeinsamer Code für Android, iOS und Web

Seminar - GFU Cyrus AG

Die Teilnehmenden erlernen den Aufbau eines Shared Modules für mobile Anwendungen. Ziel ist es, den expect/actual-Mechanismus für plattformspezifischen Code anzuwenden, plattformübergreifende Bibliotheken für Networking und Datenbanken zu integrieren und die gemeinsame Logik nahtlos in native Android- und iOS-Projekte einzubinden.
Termin Ort Preis*
22.02.2027- 23.02.2027 online 1.713,60 €
22.02.2027- 23.02.2027 Köln 1.713,60 €
22.11.2027- 23.11.2027 online 1.713,60 €
22.11.2027- 23.11.2027 Köln 1.713,60 €

Alle Termine anzeigen

*Alle Preise verstehen sich inkl. MwSt.

Detaillierte Informationen zum Seminar

Inhalte:
  • 1. Die KMP-Philosophie und Architektur
    • Code-Sharing-Strategie: Warum Logik-Sharing oft besser ist als UI-Sharing.
    • Projektstruktur: Aufbau des Shared Modules und der Plattform-Targets.
    • Das Ökosystem: Aktueller Status der Unterstützung durch Google und JetBrains.

  • 2. Der expect/actual-Mechanismus
    • Plattform-Abstraktion: Wie man gemeinsame Schnittstellen definiert und plattformspezifisch implementiert.
    • Interoperabilität: Aufruf von Swift/Objective-C aus Kotlin und umgekehrt.
    • Native APIs: Zugriff auf Sensoren, Dateisysteme oder Bluetooth auf jedem Target.

  • 3. Multiplatform Networking mit Ktor
    • HTTP Client: Konfiguration von Ktor für asynchrone Netzwerkanfragen.
    • Engines: Auswahl der richtigen Engine für Android (OkHttp), iOS (Darwin) und JS/Wasm.
    • JSON-Parsing: Typsichere De-/Serialisierung mit Kotlin Serialization.

  • 4. Datenhaltung mit SQLDelight
    • Multiplatform Database: Datenbank-Tabellen einmal definieren, nativ generieren lassen.
    • SQL-First: Schreiben von echtem SQL mit Typsicherheit für Kotlin.
    • Migrationen: Versionsmanagement der Datenbank über alle Plattformen hinweg.

  • 5. Shared Logic in der Praxis: State und Flow
    • Coroutines & Flow: Reaktive Programmierung im Shared Module.
    • Concurrency: Sicherer Umgang mit Threads auf verschiedenen Plattformen (Kotlin/Native Speicherverwaltung).
    • Viewmodels: Gemeinsame State-Verwaltung für Android und iOS.

  • 6. UI-Integration: Compose und SwiftUI
    • Jetpack Compose (Android): Direkte Anbindung an den Shared Code.
    • SwiftUI (iOS): Konsumieren von Kotlin Flows und State in Swift.
    • Compose Multiplatform: Ausblick auf deklarative UIs für alle Plattformen (Desktop, iOS, Web).

  • 7. Build-System und Gradle Multiplatform Plugin
    • Target-Konfiguration: Management von Kompilaten für iOS (XCFrameworks) und Android (AAR).
    • Dependency Management: Einbindung von KMP-Bibliotheken via Gradle.
    • Continuous Integration: Automatisierte Builds für verschiedene Zielarchitekturen (ARM64, X64).

  • 8. Web-Targets: Kotlin/JS und Kotlin/Wasm
    • Browser-Integration: Kotlin-Code im Web ausführen.
    • WebAssembly (Wasm): Performance-Vorteile und aktuelle Browser-Unterstützung.
    • DOM-Interaktion: Zugriff auf Web-APIs direkt aus Kotlin heraus.

  • 9. Praxis-Workshop: The Shared App
    • Workshop: Entwicklung einer Weather App mit Shared Networking und DB.
    • Integration-Task: Einbinden der Logik in eine Android-App (Compose) und eine iOS-App (SwiftUI).
    • Fixing-Task: Behebung von plattformspezifischen Fehlern mittels expect/actual.
    • Final Roadmap: Migrationspfad für bestehende Single-Platform-Apps zu KMP.




Dauer/zeitlicher Ablauf:
2 Tage
Zielgruppe:
  • Android-Entwickler: Zur Erweiterung ihrer Apps auf iOS und Web.
  • iOS-Entwickler: Zum Verständnis der Integration von Kotlin-Artefakten.
  • Mobile Architekten: Zur Planung konsistenter Business-Logik über Plattformen hinweg.
  • Full-Stack-Entwickler: Zur Nutzung von Kotlin-Code im Frontend via WASM/JS.



Seminarkennung:
102349
Nach unten
Nach oben
Wir setzen Analyse-Cookies ein, um Ihre Zufriedenheit bei der Nutzung unserer Webseite zu verbessern. Diese Cookies werden nicht automatisiert gesetzt. Wenn Sie mit dem Einsatz dieser Cookies einverstanden sind, klicken Sie bitte auf Akzeptieren. Weitere Informationen finden Sie hier.
Akzeptieren Nicht akzeptieren









Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha



Bei der Verarbeitung Ihrer personenbezogenen Daten im Zusammenhang mit der Kontaktfunktion beachten wir die gesetzlichen Bestimmungen. Unsere ausführlichen Datenschutzinformationen finden Sie hier. Bei der Kontakt-Funktion erhobene Daten werden nur an den jeweiligen Anbieter weitergeleitet und sind nötig, damit der Anbieter auf Ihr Anliegen reagieren kann.







Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha