Introduction
Kotlin est un langage de programmation, développé par JetBrains, s'exécutant sur une machine virtuelle Java.
Il y a plusieurs idées derrière ce langage :
- Disposer des fonctionnalités avancées de Java 8, Scala, Groovy, C# et TypeScript mais s'exécutant indifférement sur une JVM 6 ou supérieure.
- S'exécuter indifférement sur Android ou sur JVM.
- S'exécuter en natif sur d'autres plateformes comme iOS.
- Pouvoir se transpiler en JavaScript afin de partager du code entre le client et le serveur.
- Disposer d'une syntaxe concise et à la frontière de C#, Java, TypeScript et Swift pour simplifier à tous , l'apprentissage du langage.
- S'appuyer sur l'echosystème riche de Java (IDE, frameworks, etc) pour garantir la productivité.
- Et le plus important, toujours produire un byte-code qui soit identique à celui que produirait le compilateur Java pour assurer la rétro-compatibilité.
Ce dernier point est ce qui constitue la plus grande force de Kotlin. En effet, tout code, lib, framework développé en Kotlin marchera en Java et tout code, lib, framework développé en Java marchera en Kotlin.
Ce faisant, il est possible de migrer progressivement ou partiellement son SI sans jamais casser la compatiblité avec l'existant Java. Le corollaire est que tout framework (JUnit, Spring, Hibernate), analyseur de qualité (Sonar, JaCoco, PMD, Findbug), ou IDE (NetBeans, Intellij IDEA, Eclipse) qui marche en Java marchera exactement de la même manière avec Kotlin.
Ce qui confère aux DSI la possibilité de piloter leurs migrations sans la nécessité de mettre à jour leurs plate-formes d'intégration continue et leurs processus de reporting, mais également de revenir en arrière en cas d'imprévu, ceci sans casser les développements.
Chapitres
Nous allons donc présenter pas à pas les fonctionnalités nouvelles offertes par Kotlin dans les articles suivants :