JetBrains, de maker van populaire ontwikkeltools, heeft een alpha-versie aangekondigd van zijn Compose Multiplatform voor iOS, waarmee de ondersteuning van de multiplatform declaratieve UI-toolkit, gebouwd op Google Jetpack Compose, wordt uitgebreid. Compose Multiplatform, dat al compatibel is met Android, Windows, Linux, macOS en het web, omvat nu ook iOS, zodat alle belangrijke besturingssystemen worden ondersteund.
Door dezelfde API te bieden voor alle ondersteunde platforms stroomlijnt Compose Multiplatform de ontwikkeling van apps door Jetpack Compose API's te repliceren. Ontwikkelaars die ervaring hebben met Jetpack Compose voor het maken van moderne Android-gebruikersinterfaces kunnen deze vaardigheden nu toepassen om een gedeelde UI te bouwen via Compose Multiplatform, gericht op iOS en verder.
Compose Multiplatform bevat state management, layout compositie en animaties. De toolkit voorziet ook in OS-afhankelijke functies zoals het laden van bronnen en gebruikt abstracties van een hoger niveau om de overdraagbaarheid te maximaliseren. Compose Multiplatform maakt gebruik van de Skiko grafische bibliotheek, bekend als Skia voor Kotlin, en maakt gebruik van canvas-gebaseerde rendering op iOS. Skiko is gebaseerd op Skia, dat Google gebruikt voor zijn Chrome-, ChromeOS- en Flutter-producten.
Net als bij Flutter zorgt deze aanpak voor een consistente look en feel op alle ondersteunde platforms voor Compose Multiplatform-applicaties. In tegenstelling tot Flutter bevat de toolkit standaard Material en Material 3 widgets, wat resulteert in apps die lijken op standaard Android-ontwerpen. Hoewel Material momenteel de enige widget look-and-feel is die op iOS wordt ondersteund, heeft JetBrains niet bevestigd of er in de toekomst een native widget look-and-feel zal worden geïmplementeerd.
Compose Multiplatform voor iOS pakt het belangrijkste aspect van cross-platform app-ontwikkeling aan - interoperabiliteit met de OS SDK - en biedt een bidirectionele interoplaag bovenop UIKit. Dit omvat twee primaire klassen: UIKitView en ComposeUIViewController. Met UIKitView kunnen ontwikkelaars platformspecifieke widgets zoals kaarten, webweergaven, mediaspelers of camerafeeds opnemen in een Compose UI. ComposeUIViewController daarentegen kan worden gebruikt om Compose-schermen in te voegen in UIKit- en SwiftUI -toepassingen, waardoor een bestaande app geleidelijk kan worden omgezet in een Compose-toepassing.
Terwijl het no-code en low-code ontwikkelingslandschap zich blijft uitbreiden, maken tools als Compose Multiplatform, samen met platforms als AppMaster, app-ontwikkeling toegankelijker en efficiënter voor ontwikkelaars over de hele wereld. Klik hier voor een uitgebreide gids over no-code en low-code app-ontwikkeling voor 2022.