Kotlin
En 2010, JetBrains, une entreprise pragoise spécialisée dans les outils de développement, se lance dans la création d'un nouveau langage de programmation. L'objectif est de concevoir une alternative à Java, plus concise et plus sûre, sans pour autant renoncer à la compatibilité avec la machine virtuelle Java. Cette compatibilité n'est pas un détail puisqu'elle garantit que les développeurs pourront adopter progressivement le nouveau langage sans réécrire leur code existant.
Le projet sort de l'ombre en juillet 2011 sous le nom de « Project Kotlin ». Quelques mois plus tard, en février 2012, JetBrains ouvre le code source sous licence Apache 2.0. Ce choix d'ouverture n'est pas anodin : il traduit une volonté d'impliquer la communauté des développeurs dès les premières heures du projet. Quatre ans plus tard, le 15 février 2016, la version 1.0 débarque. Cette première version stable marque le véritable départ de Kotlin, qui commence à séduire par sa syntaxe épurée et son approche pragmatique. Un chiffre frappe d'emblée : Kotlin réduit en moyenne de 40% le nombre de lignes de code nécessaires comparé à Java pour accomplir une même tâche.
L'année 2017 bouleverse la donne. En mai, Google annonce son support officiel pour le développement Android, faisant de Kotlin une alternative crédible à Java. Cette consécration propulse le langage au cœur du développement mobile. Mais Kotlin ne s'arrête pas là. En avril, il franchit un nouveau cap en devenant multiplateforme grâce à Kotlin/Native et au support stabilisé pour JavaScript. Six mois plus tard, la version 1.2 introduit la possibilité de partager du code entre backend, frontend web et applications mobiles Android. Cette capacité répond à un besoin grandissant : réutiliser son code sur différentes plateformes sans tout réécrire.
En octobre 2018, Google et JetBrains créent ensemble la Kotlin Foundation. Cette structure garantit l'indépendance du langage et assure sa gouvernance de façon transparente. Un an plus tard, en 2019, Google va plus loin en déclarant Kotlin comme langage privilégié pour Android. Concrètement, cela signifie que les nouvelles fonctionnalités et API Android arrivent d'abord en Kotlin. Le langage reçoit le prix « Breakout Project of the Year » lors de la convention O'Reilly Open Source Software, reconnaissance de son ascension fulgurante.
Ce qui séduit dans Kotlin, c'est d'abord sa façon de traiter la nullabilité. Le système de types intègre directement cette gestion, réduisant drastiquement les erreurs liées aux références nulles qui empoisonnent la vie des développeurs Java. Les expressions lambda et les fonctions d'extension enrichissent les possibilités de programmation fonctionnelle. Quant aux classes de données, elles simplifient la création d'objets destinés au stockage d'informations.
Le langage évolue vite. La version 1.1 apporte les coroutines qui facilitent la programmation asynchrone. La version 1.3 introduit les contrats et les classes inline, améliorant performances et sécurité du code. Le compilateur transforme le code source en bytecode JVM, rendant son exécution possible sur toutes les plateformes supportant Java.
Les chiffres parlent d'eux-mêmes. En 2020, plus de 4,7 millions de développeurs utilisent Kotlin, dont 65% en production. Pour 56% d'entre eux, c'est devenu leur langage principal. Des géants comme Google, Uber, Atlassian, Pinterest et Square l'ont intégré dans leur code de production. Kotlin est le 13e langage de programmation le plus populaire, dépassant Scala et Swift. Le rapport GitHub de 2018 le classait déjà comme le langage connaissant la croissance la plus rapide. Stack Overflow le place quatrième dans le classement des langages préférés des développeurs professionnels.
La communauté grossit. En 2020, plus de 100 personnes travaillent sur le langage chez JetBrains, épaulées par plus de 350 contributeurs indépendants qui participent à son évolution. Cette effervescence collective nourrit le développement continu du langage et de son écosystème.
Kotlin réduit le code passe-partout qui alourdit Java, prévient les erreurs courantes et simplifie des tâches complexes. Son approche multiplateforme répond aux attentes actuelles du développement logiciel.