Kotlin logo

Kotlin

A concise multiplatform language developed by JetBrains

Multiplatform

Quoi de neuf dans KMM depuis qu’il est passé en phase alpha

Read this post in other languages:

Kotlin Multiplatform Mobile (KMM), un SDK pour le développement mobile multiplateforme, est passé en phase alpha en août 2020. Au cours des 9 derniers mois, l’écosystème de KMM a connu une évolution rapide :

  • Chaque nouvelle version de Kotlin a apporté des fonctionnalités et des mises à jour qui ont amélioré l’expérience de développement multiplateforme.
  • Les outils de développement de KMM, tels que le plugin KMM pour Android Studio, sont constamment mis à jour afin de rendre le processus de création d’applications mobiles multiplateformes plus efficace et agréable.
  • La communauté contribue activement à l’écosystème en produisant des bibliothèques utiles, en créant des exemples de projets instructifs et en partageant son expérience de l’utilisation de KMM en production.

Lisez ce qui suit pour une rétrospective des principales évolutions de l’écosystème depuis le passage en phase alpha. Si vous préférez la pratique, vous pouvez aussi visiter le portail de documentation de KMM pour en savoir plus et l’essayer !

Commencer avec KMM


Dans cet article, nous abordons les points suivants :

Quoi de neuf dans le plugin KMM ?

Le plugin KMM pour Android Studio peut vous aider à développer des applications multiplateformes. Il vous permet de créer de nouvelles applications mobiles multiplateformes en quelques clics et il est étroitement intégré à l’écosystème de développement iOS.

Intégration stable et personnalisable avec iOS

Avec le plugin KMM, vous pouvez exécuter, tester et déboguer la partie iOS de votre application sur des cibles iOS directement depuis Android Studio. Depuis le lancement du plugin, son intégration avec iOS est devenue beaucoup plus stable et configurable et il prend maintenant en charge les derniers outils iOS. Voir la liste complète des améliorations mises en œuvre pour l’intégration avec iOS.

Assistants de projet flexibles

Le plugin KMM est également un outil d’accompagnent essentiel pour commencer avec KMM. Les assistants du plugin vous aident à créer rapidement un nouveau projet multiplateforme ou à ajouter un module multiplateforme à votre projet.

La dernière version du plugin offre la possibilité d’utiliser l’intégration avec Cocoapods pour les nouveaux projets et modules KMM. Il vous suffit de fournir une description supplémentaire du module KMM et le plugin générera tout le code de configuration requis.

Pour voir la liste complète des nouvelles fonctionnalités et améliorations du plugin KMM et connaître les instructions d’installation et les informations de compatibilité, consultez la page dédiée aux versions du plugin KMM.

Quoi de neuf dans Kotlin pour KMM ?

KMM s’appuie sur les capacités multiplateformes de Kotlin et utilise Kotlin/JVM et Kotlin/Native pour produire les artefacts de la plateforme – .jar pour Android et .framework pour iOS. Chaque mise à jour de Kotlin améliore l’expérience des développeurs et développeuses qui créent des applications mobiles multiplateformes avec KMM.

Meilleure intégration iOS avec des améliorations pour Kotlin/Native

L’équipe Kotlin/Native concentre tout particulièrement sont travail sur la fonctionnalité la plus attendue par la communauté KMM : la nouvelle approche de gestion de la mémoire pour Kotlin Native. Nous prévoyons de présenter une première version du développement de la nouvelle conception de la gestion de la mémoire d’ici la fin de l’été 2021. Pour en savoir plus sur l’état d’avancement de ce projet, lisez notre article sur la Modification de la gestion de la mémoire dans Kotlin/Native.

Si nous avons considérablement progressé dans l’implémentation de la nouvelle approche de gestion de la mémoire, nous avons également avancé sur d’autres fonctionnalités du développement iOS avec Kotlin/Native :

Des outils stables pour vos projets multiplateformes

Quel que soit le type de projet, la stabilité des outils est essentielle pour que le travail soit plus agréable. Après le passage de KMM en phase alpha et l’introduction de nombreuses nouvelles fonctionnalités multiplateformes, l’équipe Kotlin Multiplatform s’est concentrée sur l’amélioration de l’interface et de la stabilité de l’importation dans les IDE pour les projets multiplateformes. Nous avons corrigé de nombreux problèmes entraînant un “code rouge” dans l’IDE lors d’un travail sur des projets multiplatformes. Nous allons continuer à améliorer l’expérience de développement multiplateforme et pur vos retours sur ce point sont particulièrement importants pour nous. Alors n’hésitez pas à nous signaler les problèmes que vous rencontrez sur notre outil de suivi YouTrack.

Il ne s’agit là que des principales évolutions. Pour consulter la présentation détaillée de toutes les nouvelles fonctionnalités de Kotlin pour le développement d’applications mobiles multiplateformes, rendez-vous sur la page Nouveautés de Kotlin pour KMM du portail de la documentation KMM. Cette page est particulièrement complète car elle est mise à jour à chaque nouvelle version de Kotlin !

Quoi de neuf dans la communauté ?

La communauté est le cœur de tout écosystème technologique. Vous êtes vraiment notre plus grande source d’inspiration et d’informations ! Depuis la première version, les développeurs et développeuses du monde entier ont soutenu la croissance de l’écosystème KMM en partageant leur expérience de l’utilisation de KMM dans leurs projets de production et en créant des bibliothèques et des exemples de projets utiles.

L’augmentation du nombre de bibliothèques KMM

Le nombre de bibliothèques KMM est en constante augmentation. Vous pouvez donc sélectionner celles qui correspondent le mieux aux exigences de votre projet :

  • Realm, une base de données locale open source et simple d’utilisation, dispose désormais d’un nouveau SDK Kotlin Multiplatform. Découvrez les principes de conception essentiels du développement du nouveau SDK.  ;
  • Decompose peut vous aider à partager davantage de code avec KMM. Decompose fournit des composants métiers logiques tenant compte du cycle de Kotlin multiplateforme, avec une fonctionnalité de routage et une interface utilisateur personnalisable. KMM est flexible et vous permet de choisir la part de votre base de code que vous souhaitez partager. Vous n’êtes donc pas tenu·e de limiter son utilisation aux couches fondamentales et commerciales de votre projet et des bibliothèques comme Decompose peuvent vous aider à atteindre cet objectif.

Les développeurs et développeuses KMM ont encore beaucoup de besoins et attentes, ce qui représente autant d’opportunités pour les auteurs de bibliothèques. Pour rejoindre cet écosystème en pleine expansion, vous pouvez apprendre à créer et publier une bibliothèque multiplateforme !

Nouveaux exemples de projets

Les exemples de projets peuvent s’avérer très utiles pour acquérir une première expérience pratique d’une technologie. Grâce au formidable travail de la communauté, vous pouvez choisir un exemple de projet en fonction de vos scénarios de partage de code ou vous amuser à tous les explorer :

  • L’exemple D-KMP montre comment partager entièrement le ViewModel (y compris la couche de navigation) avec KMM, implémente les patterns MVI et CQRS, et utilise les derniers kits d’outils d’interface utilisateur déclarative : Compose pour Android et SwiftUI pour iOS.
  • Le projet multiplatform-redux-sample montre comment créer une application multiplateforme avec KMM et ReduxKotlin.
  • Le célèbre projet people-in-space constitue une excellente démonstration de toute la puissance du la technologie Kotlin Multiplatform. En plus de partager toute la logique métier et de recourir à des kits d’outils d’interface utilisateur mobile modernes, il utilise Compose Desktop, vous pouvez donc exécuter cet exemple d’application sur votre PC !

D’après la dernière enquête que nous avons menée auprès des utilisateurs de Kotlin Multiplatform, la principale demande de la communauté concerne la mise à disposition d’exemples plus complexes. C’est pourquoi nous avons introduit un exemple de production KMM officiel provenant de l’équipe KMM. Il s’agit d’un lecteur RSS simple que vous pouvez télécharger sur l’App Store et Google Play. Conçu pour démontrer comment utiliser KMM dans des projets de production concrets, il fournit un fichier lisezmoi complet avec une explication de l’architecture qui vous permet d’appliquer les approches dans vos projets.

De nouveaux témoignages d’équipes bénéficiant de KMM

Le partage de code entre plateformes mobiles avec KMM devient plus courant pour les entreprises et pour les développeurs et développeuses partout dans le monde :

  • Netflix est passé à Kotlin Multiplatform Mobile pour optimiser la fiabilité de son application studio et améliorer sa vitesse de livraison.
  • Philips utilise KMM pour accélérer l’implémentation de nouvelles fonctionnalités. Cela a également permis de développer les interactions entre les développeurs et développeuses Android et iOS de leur équipe.
  • KMM aide Down Dog à lancer des fonctionnalités simultanément sur toutes les plateformes, à accélérer le développement et à réduire le nombre de bugs. L’équipe a même migré la majorité du code de sa plateforme iOS de Swift vers Kotlin. Hormis cinq fichiers Swift, son projet est désormais principalement en Kotlin.

Consultez la section études de cas du portail KMM pour découvrir d’autres témoignages inspirants d’entreprises de toutes tailles et de développeurs et développeuses individuel·les.

Quoi de neuf sur le portail KMM ?

Nous continuons à enrichir le portail de documentation afin qu’il devienne votre assistant au quotidien pour travailler avec KMM :

  • La nouvelle page de FAQ est un bon point de départ pour votre parcours avec KMM. Elle comprend des réponses aux questions les plus fréquentes, telles que comment travailler avec KMM sous Windows. Si votre question n’est pas abordée dans cette section, n’hésitez pas à nous le signaler !
  • Le nouveau guide détaillé vous aidera à rendre votre application Android existante multiplateforme et opérationnelle sur Android comme sur iOS. N’attendez pas de commencer un nouveau projet pour profiter des avantages de l’approche multiplateforme !

La lecture de documentation n’est pas le seul moyen de se familiariser avec KMM. La nouvelle série de vidéos « Kotlin Multiplatform Multiverse » sur la chaîne YouTube de Kotlin aborde de nombreux thèmes utiles pour débuter, tels que la création d’un nouveau projet et l’utilisation de Ktor pour le réseau, et vous permet de découvrir KMM en profondeur sans quitter le confort de votre canapé.

Quoi de prévu pour la suite ?

Les neuf derniers mois ont été intenses ! Cependant, le meilleur reste à venir car KMM est l’une des priorités de l’équipe Kotlin.

La prochaine étape importante et très attendue sera le passage de KMM en phase bêta. Dans cette optique, nous travaillons sur un plan détaillé et publierons un article de blog sur les tâches liées à KMM qui seront achevées avant l’annonce de la version bêta. La plupart d’entre elles, notamment la Prise en charge de la cible Apple Silicon dans les outils Kotlin Multiplatform et le Prototype d’un nouveau ramasse-miettes, sont en cours. Consultez la feuille de route de Kotlin pour en savoir plus sur nos priorités actuelles.

Nous sommes ravi·es de voir la communauté grandir et KMM être adopté par un nombre croissant d’entreprises dans le monde. Rejoignez- nous dans cette aventure du mobile multiplateforme dès aujourd’hui !

Commencer avec KMM

En lire et en voir plus

Découvrez les vidéos Kotlin sur YouTube :

Consultez le blog Kotlin :

Pour en savoir plus, consultez les documentations Kotlin et KMM :

Auteur de l’article original en anglais : Ekaterina Petrova

image description

Discover more