Ajouter un commentaire

Kotlin Multiplatform : au-delà d’Android

Par:
ftonic

lun, 29/11/2021 - 10:23

Comme tout langage, Kotlin a vocation à aller au-delà de sa plateforme. Aujourd’hui, Kotlin est surtout un langage dédié aux apps Android. Derrière Kotlin Multiplatform se cache l’ambition de proposer un langage unique pour x plateformes. Au centre, nous avons Common Kotlin qui est le coeur du langage avec les librairies et les outils. Le Common Kotlin est donc le langage portable partout. 

Kotlin Multiplaform est un ensemble de librairies pour réutiliser les codes Kotlin sur n’importe quelle plateforme supportée. Cette portabilité est assurée par Kotlin/JVM, Kotlin/JS et Kotlin/Native. Ainsi, nous retrouvons les supports de la JVM, de JavaScript, de macOS, de Linux et de Windows et bien entendu, Android et iOS. 

Le projet est en alpha depuis quelques mois. La roadmap reste imprécise. On peut s’attendre à des évolutions importantes dès avril prochain avec la prochaine version de Kotlin. Côté outillage, le plus simple est d’utiliser Android Studio et d’installer le plugin Kotlin Multiplateform Mobile.

Il est difficile de déterminer l’intérêt de cet environnement tant qu’il n’est pas en version exploitable. Difficile de comparer Kotlin Multiplatform avec Flutter même si l’esprit est le même. Flutter est aujourd’hui une technologie pouvant être mise en production et avec un minimum de recul même si sur les parties desktop et web, rien n’est vraiment sec. 

L’un des enjeux pour Kotlin Multiplaform sera le niveau de support du langage sur les différentes plateformes. S’il y a de grosses différences avec un core language restreint, l’intérêt sera de facto réduit. 

Il existe de nombreux solutions pour créer des apps multiplateformes React et Flutter sont les deux projets les plus actifs. Xamarin est aujourd’hui largement distancé et il faudra voir ce que le projet MAUI (.Net 6) proposera réellement. 

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
  GGG   X   X  M   M  K  K  M   M 
G X X MM MM K K MM MM
G GG X M M M KK M M M
G G X X M M K K M M
GGG X X M M K K M M