Program JavaZone

Workshop Tirsdag 1. september

Write once, run anywhere: A Hands-on Compose Multiplatform Workshop

Workshop A

Engelsk 4 t kotlin Multiplatform (KMP) Compose Multiplatform Android iOS Kotlin

Morten Nygaard Åsnes

Morten Nygaard Åsnes is a senior developer at Miles.
Morten is a passionate developer who loves exploring new technologies. He has extensive experience with the Kotlin and the Java ecosystem and has been an early adopter of Kotlin Multiplatform and Compose Multiplatform.

Kristian Berg

Kristian Berg is Tech Lead for the platform team at KS Digital.
With over two decades of Java under his belt and Kotlin added to the mix two years ago,
he has been a constant presence in the local Java community through javaBin Bergen since 2004,
where he has also served on the javaBin board for several years.

Cross-platform development has evolved significantly since the early days of Java's "Write Once, Run Anywhere" (WORA) philosophy. Today, Kotlin Multiplatform (KMP) and Compose Multiplatform provide a stable framework for sharing code across Android, iOS, and Desktop.

In this workshop, we will build a functional conference application to navigate the JavaZone schedule. The focus is on implementing a shared codebase that handles both the user interface and the underlying business logic without sacrificing native performance.

The first half of the session is dedicated to the user interface. We will explore how Compose Multiplatform handles rendering across different screen sizes and form factors. We will also address state management, comparing patterns such as MVVM and MVI to maintain a predictable data flow in a multi-platform environment.

Once the foundation is set, we will implement the application's core logic. This includes fetching the JavaZone schedule via Ktor and implementing local persistence with SQLDelight for offline functionality.

By the end, you’ll have the skills and a template to build your own multiplatform applications.

This workshop is for Java or Kotlin developers looking to expand into mobile and desktop. No prior mobile experience is required, but familiarity with Kotlin or modern Java is recommended.

- IntelliJ IDEA or Android Studio (latest version) with the Kotlin Multiplatform plugin. - A Mac with Xcode is required to build/run the iOS target (Optional: Windows/Linux users can still target Android and Desktop). - Clone the workshop repository and run the setup script. Full setup available here, and should be performed in advance: https://github.com/mortenaa/javazone-cmp-workshop/blob/main/docs/SETUP.md

  1. Cloud on Your Terms: Building Your Own Cloud-Native Platform Workshop B
  2. Create Your Own Role-Playing Game with Agentic AI using Spring AI (Delivered as a Workshop) Workshop C
  3. Red light, Green light! Workshop D
  4. Building secure AI agents with Quarkus LangChain4j Workshop C