Aller au contenu

KotlinConf'25 : quelles sont les annonces à retenir ?

À la KotlinConf'25, JetBrains a levé le voile sur l’avenir de Kotlin : langage, IA, multiplateforme, outillage… Voici ce qu’il faut retenir.

Bannière de présentation des KotlinConf 2025

En 2016 apparaissait Kotlin, un langage développé par JetBrains, dont le nom vient d'une île du golfe de Finlande. Un an plus tard, Google annonçait que Kotlin devenait le second langage officiellement pris en charge pour le développement des applications Android. Depuis lors, beaucoup de chemin a été parcouru : Kotlin est désormais un écosystème complet et très riche. Nous ne reviendrons pas ici sur les bases du langage, d'autres articles le font très bien.

Développeurs Java, adoptez Kotlin !
Face aux défis modernes du développement logiciel, Java montre ses limites. Kotlin, langage moderne et pragmatique, offre une alternative puissante pour les développeurs Java. Découvrez comment Kotlin peut révolutionner votre productivité et simplifier vos projets.

Nous allons plutôt revenir sur les toutes dernières annonces faites par JetBrains lors des KotlinConf'25, la grand-messe Kotlin à Copenhague (ou København pour les intimes).

Adoption de Kotlin

Un développeur sur dix utiliserait Kotlin dans le monde. Les chiffres sont probablement enjolivés par JetBrains lui-même, mais ce qui est certain c'est que le taux d'adoption ne cesse d'augmenter. Fin 2024, Kotlin comptait 2,5 millions d'utilisateurs, grâce à un écosystème qui devient de plus en plus complet.

L'entrée du Bella Center, le centre de conférences à Copenhague

Le langage

La Release Candidate (RC) de Kotlin 2.2 est disponible et apportera trois grandes nouveautés dans le langage :

Le K2 mode devient désormais le mode de compilation par défaut avec IntelliJ. Il réduit le temps de compilation des applications Kotlin de 30 à 40%, selon JetBrains. Ce mode vise à pérenniser le langage et à l'inscrire dans le futur. Grâce à K2, JetBrains assure une meilleure stabilité, permettant ainsi de sortir de nouvelles fonctionnalités plus régulièrement.

D'autres nouveautés du langage ont été annoncées pour les futures versions :

  • Positional destructuring → name-based destructuring : décomposition d'un objet basée sur le nom des variables et non plus sur leur position.
  • Rich Errors : une nouvelle manière de gérer les erreurs grâce à la définition d'union de types.
  • Must-use Return Value : avertissement lorsque les retours des méthodes utilisées sont ignorés.

Les détails de l'implémentation arriveront dans le courant de l'année.

L'écosystème Kotlin

Kotlin offre de nombreux plugins et librairies comme kotlinx-serialization-json, kotlinx-coroutines-core, dokka... Cependant, il peut être compliqué de s'y retrouver et de tout configurer, notamment à cause des numéros de versions différents. Pour simplifier cela, les équipes de Kotlin vont harmoniser les configurations afin de rendre leur utilisation plus facile et "developer-friendly".Un exemple vaut mieux que des explications compliquées :

plugins {
  kotlin("jvm") version "2.2.0"
  kotlin("plugin.power-assert") version "2.2.0" 
  kotlin("plugin.serialization") version "2.2.0"
  id("org.jetbrains.kotlinx.binary-compatibility-validator") version "0.17.0"
  id("org.jetbrains.dokka") version "2.0.0"
  id("org.jetbrains.kotlinx.kover") version "0.9.1"
}

dependencies {
  implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.0")
  implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core: 1.10.1")
  implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.1")
  implementation("org.jetbrains.kotlinx:kotlinx-io-core:0.6.0")
}

Définition actuelle dans le build.gradle

plugins {
  kotlin("jvm") version "2.2.0"
}

dependencies {
  implementation(kotlin("core"))
  implementation(kotlin("serialization-json-format")) 
  testImplementation(kotlin ("test"))
}

Uniquement définir la version de Kotlin

Mais ce n'est pas tout : JetBrains travaille également sur un nouvel outil de build, Amper, qui ne requiert aucune configuration. Toujours en alpha, cet outil est très prometteur et pourrait favoriser une adoption encore plus large de l'écosystème Kotlin.

L'intérieur du Bella Center de Copenhague

Kotlin et l'intelligence artificielle

Kotlin suit la tendance et s'impose dans le domaine de l'intelligence artificielle. Par exemple, le SDK Java d'OpenAI est écrit... en Kotlin. Il en va de même pour le SDK Java d'Anthropic. En parallèle, Spring AI propose des Domain-Specific Languages (DSL) pour Kotlin.

Koog

JetBrains a annoncé le lancement de Koog, un framework écrit en Kotlin conçu pour créer des agents d'intelligence artificielle de manière déclarative, concise et élégante.

Mellum

JetBrains a également dévoilé une nouvelle version de Mellum, son LLM maison, en open source, avec une version spécifiquement fine-tunée pour Kotlin.

Kotlin Multiplatform

Kezako ?

Kotlin Multiplatform (KMP) est une technologie permettant de créer des applications pour différentes plateformes tout en réutilisant une partie ou l'ensemble du code. Ces plateformes incluent iOS, Android, macOS, Windows, Linux et le web.

Compose Multiplatform est la partie graphique : ce framework permet de concevoir des interfaces graphiques en Kotlin pour ces mêmes plateformes, avec une expérience quasi identique à celle des applications natives. Si vous connaissez Dart et Flutter, vous ne serez pas dépaysé.

Un nouveau plugin pour une meilleure intégration


Un nouveau plugin KMP est disponible pour IntelliJ et Android Studio, offrant :

  • Un nouveau wizard bien plus complet pour la création de projet.
  • De nombreuses vérifications lors de l'ouverture ou de la création d'un projet.
  • Une meilleure compréhension et navigation dans le code Swift.

Stable pour iOS

Après une longue période en bêta, Compose Multiplatform est désormais stable pour iOS. Il est enfin possible de partager l'intégralité de la logique et de l'interface entre Android et iOS... le tout en Kotlin ! JetBrains garantit des performances et une expérience utilisateur équivalentes à celles des applications natives.

Arrivée du Hot Reload


Le très attendu Compose Hot Reload est enfin disponible en alpha. Cette fonctionnalité, déjà présente dans d'autres frameworks, permet de rafraîchir instantanément l'interface sans avoir à relancer un build complet.

Des Coding Battles étaient organisées

Côté serveur

Partenariat avec Spring

Un partenariat stratégique a été conclu avec les équipes de Spring pour garantir une meilleure intégration entre Kotlin et Spring, avec notamment :

  • De nouvelles DSL pour les prochaines versions.
  • L'utilisation de kotlinx.reflect pour la réflexion.
  • Le support total de la null safety.
  • Des supports d'apprentissage en Kotlin.

Même si Spring s'utilise très bien avec Kotlin, cela va renforcer les liens mais surtout pérenniser et inscrire le langage dans le temps.

Ktor

Notons très rapidement la sortie de la version 3 de Ktor, le framework web maison pour des applications serveur ou client.

Extension pour Visual Studio Code

Peut-être l'annonce la plus étonnante : JetBrains développe une nouvelle extension VS Code pour le support de Kotlin. Cela peut paraître surprenant car c'est en quelque sorte un concurrent d'IntelliJ mais l'idée derrière tout cela est claire : augmenter la communauté de développeurs utilisant Kotlin pour faire en sorte que Kotlin soit partout !

Même l'espace Lounge était prévu !

En résumé

Le but ici n'est pas d'expliquer tout en détail, mais de donner un aperçu du vaste écosystème Kotlin et au moins savoir que cela existe. Voici donc les 5 annonces les plus importantes faites par JetBrains durant cette Keynote des KotlinConf' 2025 :

  • Kotlin 2.2-rc
  • Koog
  • Compose Multiplatform pour iOS est en version stable
  • Arrivée du Hot Reload pour Compose Multiplatform
  • Partenariat stratégie avec les équipes de Spring

Retrouvez la rediffusion de cette keynote, riche en annonces, en streaming

Rediffusion KotlinConf'25 - Keynote

Restez branché pour plus de détails sur Kotlin 🔌

Dernier