Google propose Kotlin Symbol Processing (KSP) Alpha

Par:
fredericmazue

mar, 16/02/2021 - 16:26

Google a annoncé la version alpha de Kotlin Symbol Processing (KSP), un outil pour créer des plugins de compilation légers dans Kotlin. KSP offre des fonctionnalités similaires à KAPT.

Cependant, selon Google, KSP est jusqu'à 2 fois plus rapide, et il offre un accès direct aux fonctionnalités du compilateur Kotlin. KSP est en cours de développement avec la compatibilité multi plates-formes à l'esprit.

La demande n°1 des développeurs Kotlin est selon Google, la réduction du temps de construction des projets. Mountain View souligne que l'un des plus grands défis de la compilation du code Kotlin est que Kotlin ne dispose pas d'un système natif de traitement des annotations. Les processeurs d'annotations tels que Room sont omniprésents sur Android et s'appuient sur la compatibilité du traitement des annotations Java via l'outil de traitement des annotations Kotlin (KAPT). Cependant, KAPT peut être lent à exécuter, car il nécessite la génération de stubs Java intermédiaires qui peuvent ensuite être ingérés par le système de traitement des annotations Java.

Pour répondre à ce problème, lors de la conception de KSP, Google a réfléchi à ce à quoi ressemblerait le traitement des annotations pour Kotlin s'il était construit à partir de zéro. Le résultat est KSP qui offre une API pour analyser directement le code Kotlin, réduisant ainsi la pénalisation sur la vitesse de construction imposée par la génération de stub de KAPT. Selon Google, les premiers tests avec la bibliothèque Room montrent que KSP est environ 2 fois plus rapide que KAPT.

KSP est un logiciel libre sous licence Apache 2.0, disponible sur GitHub.