Ça fait juste plus cinq ans depuis que Google a annoncé pour la première fois qu’il ferait Kotlin, le langage typé statiquement pour la machine virtuelle Java développé pour la première fois par JetBrains, un langage de première classe pour l’écriture d’applications Android à Google I / O 2017. Depuis lors, Google est allé encore plus loin en faisant de Kotlin son langage préféré pour écrire des applications Android en 2019 – et bien que de nombreux développeurs utilisent encore Java, Kotlin devient rapidement le moyen par défaut de créer des applications pour le système d’exploitation mobile de Google. En 2018, Google et JetBrains se sont également associés pour lancer le Fondation Kotlin.
Plus tôt cette semaine, j’ai rencontré James Ward de Google, chef de produit de la société pour Kotlin, pour parler du rôle de la langue dans l’écosystème Android et au-delà, ainsi que des plans futurs de la société.
Il n’est pas surprenant que Google espère qu’avec le temps, tous les développeurs Android passeront à Kotlin. « Il y a encore pas mal de Java sur Android », a déclaré Ward. « Nous savons que les développeurs sont généralement plus satisfaits de Kotlin que de Java. Nous savons qu’ils sont plus productifs, que la qualité des applications est plus élevée et que nous avons donc pour objectif d’amener un plus grand nombre de ces personnes à déplacer davantage de leur code. L’interopérabilité de Kotlin […] avec Java a fait en sorte que les gens peuvent en quelque sorte déplacer progressivement les bases de code et ce serait génial d’arriver au point sur la route, où tout est tout Kotlin.
Nous n’en sommes pas encore là, cependant, en partie parce que l’écosystème Java est si grand qu’il a encore beaucoup de gravité. En raison de l’interopérabilité de Kotlin avec Java, les développeurs peuvent mélanger et faire correspondre les bibliothèques, mais pour obtenir tous les avantages de Kotlin, les développeurs doivent rester dans l’écosystème Kotlin. Et malgré toute l’attention portée à Kotlin, il convient de noter que le cœur de la plate-forme Android et ses API sont toujours construits sur Java. Il y a maintenant une poignée de bibliothèques Android qui sont écrites en Kotlin, mais ce n’est évidemment encore qu’une petite partie de la plate-forme globale.
Mais Kotlin aujourd’hui est aussi bien plus qu’Android. Kotlin côté serveur devient assez courant chez Google à ce stade, semble-t-il, avec plus de 8,5 millions de lignes de code Kotlin dans la base de code interne de Google à ce jour. Ce nombre, a déclaré la société, double maintenant chaque année.
Il s’avère que Google et JetBrains ont travaillé dur pour réécrire le compilateur Kotlin à partir de zéro ces dernières années. Ce nouveau compilateur, qui promet d’être plus rapide et d’offrir de meilleures interfaces pour permettre aux IDE d’améliorer des fonctionnalités telles qu’une meilleure indication de code et une analyse de code statique, est maintenant en version bêta et sera probablement livré l’année prochaine. Étant donné que la société a consacré pas mal de ressources à ce projet – et maintient actuellement deux compilateurs en parallèle – cela signifie que le développement du langage lui-même a ralenti un peu.
« Nous avons intentionnellement ralenti le taux de changement dans le langage parce que nous avons les deux compilateurs en parallèle », a déclaré Ward. « Une fois que nous aurons expédié le nouveau compilateur et que tout le monde s’y mettra, nous pourrons investir davantage dans de nouvelles fonctionnalités du langage. »
Parmi ces nouvelles fonctionnalités, citons récepteurs de contexte, qui sont actuellement toujours derrière un drapeau. Ceux-ci permettront aux développeurs de transmettre des paramètres à une fonction pour, par exemple, n’écrire qu’une partie du code et des valeurs pour se connecter à une base de données une seule fois, puis utiliser à nouveau ce même contexte chaque fois que vous devez établir à nouveau cette connexion.
En ce qui concerne la Fondation Kotlin, il convient de noter que jusqu’à présent, seuls Google et JetBrains étaient membres ici et que les deux sociétés utilisaient la fondation pour coordonner leurs investissements dans Kotlin. Mais Ward a expliqué que les deux sociétés cherchent à élargir la fondation avec de nouveaux membres. « Nous avons un plan pour nous étendre au-delà de cela », a-t-il déclaré. « C’est essentiel à la croissance de l’écosystème Kotlin : faire croître la fondation Kotlin au-delà des deux entreprises qui en sont les membres fondateurs. » Il a noté que les deux sociétés n’avaient pas encore de raison de placer la Fondation sous l’égide d’une organisation comme la Linux Foundation, en partie parce qu’avec deux membres, cela aurait été exagéré, mais cela pourrait changer à mesure que Google et JetBrains attirent plus de membres au fil du temps.