SmartNews réduit les lignes de code de 20% et améliore le moral des équipes avec Kotlin

SmartNews aide des millions de personnes à découvrir le monde qui les entoure chaque jour en partageant des actualités récentes provenant de diverses sources d'information. Fondée en 2012 au Japon, l'application a été téléchargée plus de 50 millions de fois dans le monde.

En juin 2019, l'équipe a constaté que le développement Android évoluait vers Kotlin-first et a décidé de commencer à tester Kotlin elle-même. Ils souhaitaient profiter des bibliothèques Jetpack Kotlin-first, réduire la quantité de code à gérer et bénéficier de la syntaxe expressive et facile à comprendre de Kotlin.

Ce qu'ils ont fait

L'équipe de SmartNews maîtrise bien Java, ce qui lui a permis de commencer à écrire en Kotlin assez facilement. Comme Kotlin est totalement interopérable avec Java, ils ont pu facilement commencer à écrire de nouvelles fonctionnalités telles que Radar météo et Actualités de tous les points de vue en Kotlin, tout en travaillant dans leur base de code existante. Ils ont utilisé des coroutines pour gérer le téléchargement et la mise en cache des images dans la fonctionnalité brevetée Radar météo. Les dispatchers de coroutines offrent une abstraction utile pour la gestion des tâches, ce qui a aidé les ingénieurs SmartNews à éviter les pièges liés à la gestion des threads bruts.

L'équipe a également refactorisé une partie de son code Java et a été impressionnée par les fonctionnalités de sécurité null de Kotlin. La syntaxe de Kotlin pour identifier la mutabilité, la nullabilité et l'initialisation a aidé l'équipe à détecter les erreurs dès le début et a réduit de 10 % le temps nécessaire pour examiner les modifications du code. Grâce à la syntaxe concise et efficace de Kotlin, ils ont également pu améliorer la lisibilité de leur base de code, ce qui a facilité la maintenance de leur code à mesure que l'entreprise continuait de croître.

Résultats

L'écriture en Kotlin leur a permis d'améliorer leur productivité globale, de l'implémentation au lancement. L'amélioration la plus notable qu'ils ont constatée est que l'écriture en Kotlin a réduit de 20 % le nombre de lignes de code converties. Environ la moitié de l'application SmartNews est actuellement en Kotlin. L'équipe de développement prévoit d'écrire toutes les nouvelles fonctionnalités en Kotlin et de refactoriser une partie de son code existant afin de continuer à améliorer la maintenabilité du code.

Alors que l'équipe de développement implémentait Kotlin et réduisait le code passe-partout, elle a constaté une amélioration du moral de l'équipe. L'équipe était ravie de pouvoir exprimer ses idées de manière plus efficace et de rendre son code plus lisible pour l'avenir. Hideo Ohashi, responsable de l'ingénierie chez SmartNews, a remarqué que Kotlin avait contribué à leurs efforts de recrutement d'ingénieurs. "Les questions les plus fréquentes des candidats sont les suivantes : "Utilisez-vous Kotlin ? À quelle fréquence l'utilisez-vous ?" Il semble maintenant que de nombreux ingénieurs souhaitent migrer vers Kotlin et le soutenir." Bien que ces améliorations du moral et du recrutement des équipes n'aient pas été les principales raisons pour lesquelles l'équipe a adopté Kotlin, ces changements positifs aideront l'entreprise à continuer de croître dans ce secteur concurrentiel.

Premiers pas

En savoir plus sur le développement d'une application Android avec Kotlin