Kotlin pour le développement d'applications Android - Le pourquoi et le comment et les astuces bonus
Publié: 2017-10-25Google I/O 2017 s'est terminé par une série d'annonces et de développements dont le monde est prêt à être témoin dans la pratique. L'une de ces annonces était celle de l'utilisation de Kotlin comme langue officielle pour le développement d'applications Android. Le géant de l'industrie a annoncé son intention d'utiliser Kotlin, ainsi que Java et C++ comme langage de programmation pour développer des applications Android.
Le langage de programmation à typage statique s'exécute sur la JVM (machine virtuelle Java), tout comme JAVA. Développé par l'équipe de programmeurs JetBrain basée en Russie, Kotlin utilise l'infrastructure du compilateur LLVM ou peut être assemblé au code source JavaScript.
Dans cet article, nous verrons ce qui a fait de Kotlin le langage souhaité parmi les principales sociétés de développement d'applications Android dans le monde. Nous examinerons également certains des moyens par lesquels vous pouvez effectuer la transition de Java à Kotlin en douceur.
Avant d'aborder la raison pour laquelle Kotlin a dû voir le jour, examinons comment il dépasse les langages de programmation populaires qui ont été utilisés par les développeurs d'applications Android jusqu'à présent.
Commençons
Les lacunes des langages de programmation d'applications mobiles que Kotlin comble -
Scala
Surcharge de l'opérateur
Kotlin suit un chemin très sécurisé en permettant de définir seulement quelques types d'opérateurs. Néanmoins, ces opérateurs sont si omniprésents que même un débutant en développement logiciel les comprendrait et ce qu'ils représentent.
Plate-forme de contraintes de mémoire
Kotlin a été conçu pour être extrêmement léger et fin dans le cadre de son objectif architectural principal, ce qui le rend idéal pour les plates-formes restrictives en mémoire et les petits programmes.
JAVA
Concision
Java n'est pas réputé pour être l'un des langages les plus clairs, bien que ce ne soit pas entièrement un problème, il est très convivial. Lorsque vous encodez pour Android en utilisant quelques-uns des idiomes les plus utilisés, le code verbeux peut augmenter les chances d'obtenir des bogues.
Lorsque vous écrivez moins de code à l'arrière d'un langage très concis, il y a automatiquement moins de probabilité d'erreurs, ce qui le rend moins fastidieux pour les développeurs.
Polyvalence
Les développeurs peuvent facilement écrire des modules avec Kotlin qui fonctionneraient parfaitement avec les codes Java actuels. Il est entièrement compatible avec la JVM et tous les frameworks et bibliothèques Java, ce qui facilite son intégration aux systèmes de construction Maven ou Gradle. Alors que certains langages sont orientés objet ou fonctionnellement affirmés, Kotlin n'a pas d'opinion sur le toit et s'abstient d'imposer la philosophie de l'un sur l'autre.
Prise en charge d'Android Studio
Kotlin est développé par JetBrains, la société derrière IntelliJ, l'IDE sur lequel Android Studio est basé. Il n'est donc pas surprenant qu'Android Studio dispose d'un excellent support pour Kotlin. Une fois que vous avez installé le plugin Kotlin, Android Studio rend la configuration de Kotlin dans votre projet aussi simple que l'ouverture de quelques menus.
Rapide
Classe de données
Kotlin permet d'énoncer les conteneurs d'informations, qui implémentent automatiquement des éléments comme la copie et l'égalité.
Propriétés déléguées et classe
Avec une classe ou des propriétés déléguées, on peut facilement définir les comportements de propriétés comme observable, paresseux, etc. ou transmettre spontanément la demande de méthodes à une autre classe. Avec Kotlin, vous pouvez même faire de vos délégués de propriété. Dans Swift, les propriétés comme observable sont des modificateurs qui doivent être implémentés, ce qui signifie que vous êtes limité à utiliser ceux qui sont fournis dans Swift.
Remarques
Issu de l'arrière-plan JVM, Kotlin prend entièrement en charge les annotations telles que @test ou @inject, ce qui n'est pas autorisé dans Swift.
Gestion de la mémoire
Contrairement à Swift qui fonctionne sur l'approche du nombre de références, qui oblige les développeurs à penser à la propriété de la mémoire et au temps d'exécution, Kotlin suppose la présence de Garbage Collector, ce qui facilite beaucoup la gestion de la mémoire.
Même avec leur ensemble de lacunes, le monde Android fonctionnait très bien à l'arrière de ces langages de programmation, la preuve étant dans les chiffres qu'il y a 3,3 millions d'applications dans le Play Store (en septembre 2017) fonctionnant pour ajouter de la valeur à les 1,4 milliard d'utilisateurs actifs.

« Alors, pourquoi les langages qui avaient aidé à développer 3,3 millions d'applications Android ne suffisaient plus ? »
Les raisons qui ont conduit à l'acceptation massive de Kotlin par les développeurs d'applications Android expérimentés, dans le monde entier, peuvent être attribuées à la sécurité nulle, au style de programmation fonctionnelle, à l'utilisation d'Anko à la place de XML, à la suppression de la dépendance ButterKnife, aux constructeurs et à la fonction d'extension et aux hacks. pour des transitions fluides.
Ce ne sont pas seulement les développeurs d'applications qui sont ravis que Kotlin devienne la langue officielle de Google, Kotlin touchera également d'autres aspects de la technologie, tels que -
- Développement Web Frontend
- Développement Web back-end
- Prise en charge iOS et MacOS
Ce ne sont pas seulement les développeurs d'applications qui attendent avec impatience ou utilisent déjà Kotlin, il existe un certain nombre de marques établies et renommées qui utilisent Kotlin comme langage principal.
Certaines entreprises ont déjà commencé à tirer parti de Kotlin et plusieurs autres ont changé tout leur processus de développement de Kotlin. Quelques-unes de ces entreprises qui opèrent via Kotlin et qui sont sous nos yeux sont - Amazon Web Services, Pinterest, Netflix, Coursera, Uber, Square, Vert.x et Trello, entre autres.
Maintenant que vous avez vu à quel point Kotlin a révolutionné les développeurs Android du monde entier depuis sa création, examinons maintenant comment vous pouvez vous préparer aujourd'hui, de la manière la plus fluide possible, pour le moment où Kotlin remplacera tous les autres langages de programmation pour les développements Android.
Période d'apprentissage
Il est temps que vous rejoigniez la foule des développeurs Android, partout dans le monde, qui s'affairent à collecter des ressources pour donner un sens au nouveau langage de programmation. Bien que vous puissiez facilement convertir la base de code Java en Kotlin, prenez le temps d'analyser les différences de code et de formats aujourd'hui même.
Astuce bonus : Ralentissez votre processus d'intégration. Donnez au moins 1 à 2 semaines à vos développeurs JAVA pour donner du sens à la plateforme.
Temps de construction
Les marques qui avaient généralement un temps de construction allant d'environ 30 secondes pour les versions incrémentielles à 75 secondes pour les versions de nettoyage, ont vu leur temps de construction augmenter depuis qu'elles ont intégré Kotlin. Le langage a entraîné une augmentation de 25 % du temps propre et d'environ 40 % du temps de construction incrémental.
Astuce bonus : au-delà des ajouts initiaux de Kotlin, les temps de construction sans changement et incrémentiels sont généralement restés constants, quel que soit le nombre de fichiers convertis. Vous serez en mesure d'avoir une idée juste de ce que seraient les temps de construction après avoir modifié un fichier.
Mises à jour
Kotlin en soi est extrêmement nouveau pour la majorité, ajoutant que la nervosité au mélange de mises à niveau dont témoignent les éléments avec lesquels Kotlin travaillera peut conduire à un chaos complet. Ce flux soudain d'informations entraînera des retards dans le travail, des erreurs dans le programme et un comportement étrange de Kotlin, dans l'ensemble.
Astuce bonus : mettez à niveau un à la fois. Au lieu d'adopter une approche agressive pour simplement dominer la concurrence, c'est une stratégie qui ne fonctionnera pas ici. Tout d'abord, trouvez le mélange dans lequel Gradle, Kotlin, Android Studio et tout le reste fonctionnent parfaitement ensemble. Une fois que vous avez terminé, passez à leur mise à niveau.
Suivre ces méthodes et d'autres similaires pour vous faciliter la vie avec Kotlin, avant de l'intégrer à votre projet, facilitera la transition de votre langage de programmation vers celui officiel de Google. La clé est de donner à votre équipe le temps de se familiariser avec la plateforme et de faire ensuite la transition.
Avec tout ce qui est couvert pour vous amener sur la scène lorsque vous commencez à présenter votre équipe à Kotlin, examinons quelques façons moins connues que Kotlin vous facilitera le développement d'applications Android .
- Vous permet de modifier le nom par défaut de l'objet compagnon à n'importe quel nom que vous souhaitez.
- Prend en charge la composition des fonctions qui non seulement rend votre code propre mais aussi rapide.
- L'option de modifier le nom de la classe générée pour obtenir une meilleure lisibilité.
Êtes-vous prêt à faire la transformation?