Kotlin 2.1 est sorti : ce qui a changé dans le langage de programmation de JetBrains
L'équipe JetBrains a officiellement annoncé la sortie de Kotlin 2.1 — une mise à jour majeure du langage de programmation populaire à typage statique. Cette nouvelle version apporte la stabilisation des fonctionnalités clés du compilateur K2, l'extension des capacités de développement multiplateforme et plusieurs améliorations de performances. Analysons les principaux changements.
Compilateur K2 stable : performances et nouvelles fonctionnalités
La principale nouveauté de la version 2.1 est le passage du compilateur K2 en statut stable. Auparavant disponible en version préliminaire, K2 est désormais le compilateur par défaut pour toutes les cibles : JVM, Native, JS et multiplateforme. Cela a conduit à une augmentation significative de la vitesse de compilation (jusqu'à 20-30 % plus rapide dans plusieurs projets) et à une amélioration de l'analyse du code.
Améliorations clés du compilateur :
- Optimisation des fonctions inline — le compilateur traite désormais mieux les fonctions intégrées, réduisant la taille du bytecode généré.
- Inférence de types améliorée — K2 détermine plus précisément les types dans les chaînes d'appels complexes, réduisant le besoin d'annotations explicites.
- Prise en charge de la nouvelle syntaxe — les constructions expérimentales ont été stabilisées, y compris les énumérations avec génériques et une meilleure gestion des value classes.
Fonctionnalités expérimentales : ce qui est apparu dans Kotlin 2.1
Bien que K2 soit devenu stable, l'équipe JetBrains a continué à introduire des fonctionnalités expérimentales. Dans la version 2.1, on trouve :
- Non-local break et continue — une fonctionnalité très attendue permettant d'utiliser ces opérateurs dans les expressions lambda, simplifiant le travail avec les boucles en style fonctionnel.
- Arguments nommés dans les lambdas — il est désormais possible de passer des arguments nommés dans les expressions lambda, améliorant la lisibilité du code lors de l'utilisation de fonctions d'ordre supérieur.
- Context receivers — extension du mécanisme des récepteurs contextuels, simplifiant l'injection de dépendances sans passage explicite de paramètres.
Kotlin Multiplatform : améliorations pour le développement multiplateforme
Kotlin 2.1 a considérablement renforcé la prise en charge des projets multiplateformes. Les principaux changements incluent :
- Modèle de mémoire unifié pour Native — toutes les plateformes (JVM, Native, JS) utilisent désormais un modèle unique de gestion de la mémoire, simplifiant le portage du code.
- Intégration améliorée avec Compose Multiplatform — les API pour les animations et les gestes dans l'UI déclarative ont été stabilisées.
- Prise en charge d'Android SDK 35 — bibliothèques et outils de compatibilité mis à jour avec les dernières versions d'Android.
Corrections et performances
La version inclut plus de 200 corrections de bugs, notamment liés au fonctionnement des coroutines, à la sérialisation et aux plugins Gradle. Les développeurs ont noté une réduction de la consommation de mémoire dans l'IDE lors de l'analyse de grands projets.
La mise à jour est disponible en téléchargement via le site officiel de JetBrains et le gestionnaire de paquets SDKMAN. Pour passer à Kotlin 2.1, il suffit de mettre à jour la version du plugin dans IntelliJ IDEA ou Android Studio et de modifier le numéro de version dans le fichier build.gradle.kts.
Kotlin 2.1 confirme le statut de l'un des langages de programmation les plus dynamiques