• Skip to main content
  • Skip to header right navigation
  • Skip to after header navigation
  • Skip to site footer
Lesjeudis

Blog Les Jeudis

Actualité Informatique et Digital

  • Annonces
    • Par région
    • Par métier
    • Par technologies
    • Par entreprise
    • Fiche métiers
  • Entreprises
  • Tests
  • News
  • Se connecter
  • Déposer CV
  • Recruteur
    • Connexion Recruteurs
    • Employeurs
    • Trouvez des CVs
    • Postez des offres
  • Categories du Blog

    • Développement
    • Réseaux et Systèmes
    • Digital
    • E-commerce
    • Marché de l’emploi
    • Conseils
    • Evénements
    • Design
    • Marketing
    • Interviews
    • —-
  • Annonces

    • Toutes nos offres d’emploi
    • par région
    • par métier
    • par technologies
    • par sociétés
    • Par Industries
    • Fiches Métiers
  • Entreprises
  • Tests
  • offres recommandées
  • Se connecter
  • Déposez CV
  • Employeurs

    • Connexion recruteurs
    • Employeurs
    • Trouvez des CVs
    • Postez des offres
  • Développement
  • Réseaux et Systèmes
  • Digital
  • E-commerce
  • Marché de l’emploi
  • Conseils
  • Evénements
  • Design
smartphone et ordinateur avec banniere sur kotlin comment langage de developpement pour android

Kotlin pour le développement Android

30/10/2020 by Dorian H Mekni

Kotlin est un language de programmation informatique pour le development Android.

Historiquement la technologie utilisée pour le développement Android en natif est Java. Google a toujours eu des souci quant au support et à l’apport de nouvelles nouvelles versions de Java. Par conséquent un nouveau language a été pensé. Il s’agit de Kotlin.

Kotlin :

C’est JetBrains, l’éditeur de l’environnement de développement Android Studio qui est à l’origine de Kotlin. Ce nouveau langage de programmation  a été révèlé au public pour la toute première fois en 2011.

Kotlin : Intellij

Kotlin a pour objectif la création d’applications mobiles sous les systèmes d’applications d’Android.

Lors de la conférence Google I/O 2017, le géant américain a annoncé que Kotlin devenait “officiellement” le second langage de programmation supporté sur Android après Java.  Aujourd’hui de célèbres entreprises ont adopté Kotlin pour la création de leur applications mobiles comme Pinterest, Trello, Evernote ou encore Uber.

Un Sponsor Nommé Google ——— >

L’appui technologique de Google envers ce langage est à la fois un gage de qualité et de longévité. 

Google a très vite adapté beaucoup de librairies au langage. La documentation officielle présente maintenant par défaut les exemples de code en Kotlin, et des développeurs influents chez eux militent et encouragent la migration de Java vers Kotlin.

L’évolution Kotlin

Les équipes de JetBrains font constamment évoluer Kotlin. Le cycle des mises à jour est régulier, les bugs éventuels sont corrigés très rapidement et de nouvelles fonctionnalités apparaissent de manière récurrente.

Un exemple parfait de cette évolution constante est la fonctionnalité des coroutines qui est passée par plusieurs phases de développement afin d’intégrer l’API stable en version 1.3.

Pourquoi utiliser Kotlin pour la création de son application mobile ?

Un code Minimaliste

La simplicité et la robustesse de Kotlin permettent aux développeur d’écrire, de comprendre et donc de débuguer facilement des applications. En règle générale, Kotlin nécessite moins d’étapes protocolaires lors de la composition du code, ce qui simplifie totalement le processus même de la réduction du code.

En + ————>

Si l’on devait citer quelques fonctionnalités : ne plus avoir besoin de mettre des points virgules à la fin de chaque instruction, la fin des null checks, l’inférence de type, étendre des classes existantes, les casts intelligents…et bien d’autres détaillées sur la page officielle Kotlin.

 Le langage de programmation Kotlin permettait déjà théoriquement de créer des applications Android. ll est maintenant traité à égalité avec Java et C++. Il faut ajouter que Kotlin est prévu pour fonctionner directement sur une machine virtuelle Java. N’oublions pas de preciser qu’il peut également être compilé sous ART. Ce dernier est l’environnement d’exécution proposé sous Android. Le bonheur est de souligner sont interopérabilité avec le code Java.  Kotlin ne nécessite en aucun cas de réécrire l’ensemble des applications. 

Kotlin Vs Java

Nous allons voir ici quelques differences par rapport à son aîné Java, Kotlin a :

  • Les fonctions venant des Object (toString,equals,..) sont apportées par le mot clef “data” devant “class” dans le fichier Kotlin.
  • Le nombre de lignes de code d’un programme Kotlin est nettement plus faible qu’un même programme développé en Java.
  • Le caractère optionnel des points-virgules
  • la gestion de la mutabilité des variables (avec les notions de var et de val)
  • l’affranchissement du NullPointerException
  • le nouvel outil de contrôle de structure « when »

Toutes ces dernières représentent un atout majeur pour la production d’un code ‘safe’ ou organisé.

Un langage de programmation plus concis représentent moins d’erreurs potentielles. Il minimise donc le risque de crashs sur le long terme. Le développement des applications étant facilité, les fonctionnalités peuvent être déployées avec rapidité et efficacité.

Interopérabilité avec Java

Nous ajoutons également que l’une des fonctionnalités “phare” de Kotlin est son interopérabilité “totale” avec Java. Effectivement, un code Java Android peut être invoqué à partir de Kotlin de même qu’un code Kotlin peut l’être à partir de Java.

De plus, un projet Android peut inclure à la fois des fichiers Java et Kotlin. Il est d’ailleurs possible de convertir les fichiers Java existants en Kotlin.

Les deux plateformes, Kotlin et Java, identifient chacune de leurs classes, ce qui permet un échange facilité et une compatibilité transparente.

Type | dit | statique

Kotlin est un langage de programmation à typage statique. Cela signifie que le type de chaque variable et expression est connu au moment de la compilation.

L’avantage du typage statique est que le compilateur peut valider les appels de méthodes et l’accès aux propriétés sur les objets lors de la compilation, et éviter ainsi de nombreux bugs anodins qui risqueraient autrement de se produire au moment de l’exécution.

Bien que Kotlin soit un langage à typage statique, il n’est pas nécessaire de spécifier explicitement le type de chaque variable que vous déclarez.

La plupart du temps, Kotlin peut déduire le type d’une variable à partir de l’expression d’initialisation ou du contexte environnant. Ceci est appelé inférence de type. Nous reviendrons plus tard sur cette notion.

Language sécurisé 

Kotlin est sécurisé. Il évite les exceptions ‘NullPointerExceptions‘ les plus redoutées et gênantes en prenant en charge la nullabilité dans le cadre de son système de types.

Une syntaxe explicite 

Kotlin est explicite. Il fera ou permettra des choses seulement si vous lui dites de le faire. L’explicite est un attribut positive en programmation. Être explicite est synonyme de précision quant aux choix des concepts et garder une transparence totale de son code face aux lecteurs et/ou aux utilisateurs. 

Voici quelques exemples d’explicites à Kotlin :

  • Kotlin n’autorise pas les conversions de types implicites. Par exemple, int en long ou float pour double. Il fournit des méthodes comme toLong() et toDouble() pour le faire explicitement.
  • Toutes les classes de Kotlin sont finales et definitives par défaut. Afin d’établir un heritage d’une classe à une autre, il est d’usage de marquer explicitement une classe comme étant ouverte. Toutes les propriétés et fonctions, membres d’une classe, sont également finales par défaut. Vous devez explicitement marquer une fonction ou une propriété comme étant ouverte pour permettre aux classes enfant de la remplacer.
  • Toute substitution ou conversion d’une fonction ou une propriété de classe ‘parent’ nécessite une annotation explicite par l’intermédiaire du modificateur override.

Un language abordable 

Kotlin est facile d’usage et d’apprentissage. Les bases de sa syntaxe ressemble beaucoup à Java. Si vous avez des bases de Java ou de tout autre langage orienté objets, vous pourrez vous apprehender Kotlin en deux à trois heures maximum.

Une programmation fonctionnelle 

Kotlin possède à la fois des fonctionnalités fonctionnelles et orientées objet. Il dispose d’un riche ensemble de fonctionnalités permettant de prendre en charge la programmation fonctionnelle, notamment les types fonctionnels, les expressions lambda, les classes de données, etc.

Armé jusqu’au dents

Kotlin dispose d’une excellente plateforme d’outils. N’importe quel IDE cree pour Java est  : IntelliJ IDEA, Eclipse, et Android Studio.

De plus, vous pouvez également télécharger le compilateur autonome de Kotlin et exécuter le code Kotlin à partir de la ligne de commande.

Un language versatile 

Vous pouvez utiliser Koltin pour créer des applications sur une large gamme de plates-formes. Nous pouvons citer notamment Serveur, Android, navigateurs et Desktop.

  • Android dispose d’un support officiel pour Kotlin.
  • Du côté du serveur, vous pouvez utiliser Kotlin avec le framework Spring, qui offre un support complet pour Kotlin dans Spring version 5.
  • Kotlin peut également être compilé en Javascript et en code machine.

Opensource 

Le langage de programmation Kotlin, y compris le compilateur, les bibliothèques et tous les outils, sont entièrement gratuits et open source. Il est disponible sous licence Apache 2 et le projet complet est hébergé sur Github.

Les bases de kotlin 

Nous verrons ici  le squelette de cette syntaxe simple à comprendre et à utiliser du language Kotlin.

Les packages

La spécification du package doit être en haut du fichier source:

Kotlin : Package

Il n’est pas nécessaire de faire correspondre les répertoires et les packages: les fichiers source peuvent être placés arbitrairement dans le système de fichiers.

Les variables

Les variables locales en lecture seule sont définies à l’aide du mot-clé val. Une valeur leur est attribuée une seule fois.

Kotlin : val

Les variables qui peuvent être réaffectées utilisent le mot-clé var:

Kotlin : var

La fonction principale 

Le point d’entrée d’une application Kotlin est la fonction principale.

Kotlin : Main Function

Les fonctions 

Fonction ayant deux paramètres Int avec le type de retour Int:

Kotlin : fun

Fonction avec un corps d’expression et un type de retour inféré:

Kotlin : fun sum

Fonction ne renvoyant aucune valeur significative:

Kotlin : fun |

Les commentaires 

Tout comme la plupart des langages modernes, Kotlin prend en charge les commentaires sur une seule ligne (ou de fin de ligne) et sur plusieurs lignes (bloc).

Kotlin : Comments

Les commentaires de bloc dans Kotlin peuvent être imbriqués comme nous le voyons ci-dessus dans la deuxième partie de notre exemple.

Les strings 

un “string” une chaîne de caractères, une suite ordonnée de caractères. Il s’agit d’un type de donnée.

Kotlin : simple name in template
Kotlin : arbitrary expression in template

Les expressions conditionnelles

une instruction ou bien expression conditionnelle est une fonction d’un langage de programmation, qui procède à divers calculs ou bien actions, selon l’évaluation d’une condition booléenne, c’est à dire vraie ou fausse.

Kotlin : Conditional

Dans Kotlin, if peut également être utilisé comme expression:

Kotlin : if ->

Les valeurs ‘null’ et les ‘nullables’

Une référence doit être explicitement marquée comme nullable lorsque la valeur null est possible.

Renvoie null si str ne contient pas d’entier:

Kotlin : null 1

Utilisez une fonction renvoyant une valeur ‘nullable’:

kotlin : null 2

Ou bien ->

kotlin : null 3

Boucle ‘for‘

la boucle for est une structure de contrôle qui permet de réitérer l’exécution d’une série d’instructions.

Cette dernière a deux parties dont une qui indique la manière de procéder à l’itération, et un tronc qui est exécuté à chaque itération.

Kotlin : For loop

Ou encore ->

Kotlin : For loop | : Dorian.H Mekni

Boucle ‘While‘

La boucle While est une structure de contrôle permettant d’exécuter un ensemble d’instructions de façon répétée sur la base d’une condition booléenne. Elle répète une suite d’instructions tant qu’une condition est respectée.

Kotlin : While Loop

L’expression ‘when’ 

When peut être utilisé comme une expression. La valeur de la branche satisfaite est renvoyée :

Kotlin : When

Range 

Vous vérifiez si un nombre se trouve dans une plage à l’aide de l’opérateur in:

Kotlin : Range |

Vous voyez si un nombre est hors de portée:

Kotlin : Range ||

Itération sur une plage:

Kotlin : Range |||

ou sur une progression:

Kotlin : Range ||||

Collections

Itérer sur une collection:

Kotlin : collections |

Vous testez si une collection contient un objet à l’aide de l’opérateur in:

Kotlin : collections ||

Utilisation d’expressions lambda pour filtrer et mapper des collections:

Kotlin : collections |||

Les classes et leurs instances 

En programmation orientée objet (POO), la déclaration d’une classe rassemble des membres, méthodes et propriétés ou attributs communs à un groupe d’objets. En premier lieu, La classe déclare des propriétés représentatifs de l’état des objets. Elle declare par la suite des méthodes définissant leur comportement.

Kotlin : class

Conclusion

Nous avons vu que Kotlin était un language favori de google pour le développement mobile Android. Il’agissait d’un language versatile, sécurisé, concis et facile à utiliser et dont l’apprentissage est accessible à tous.

Les bases de sa syntaxique de programmation est on ne peut plus simple d’usage et d’apprentissage.

Vous pouvez désormais télécharger intellij dont la version ‘community’ est gratuite afin de vous faire la main :

Kotlin : Intellij

Ou bien télécharger l’Android Studio et commencer l’aventure :

Kotlin : android

Grand nombre de tutoriels existent pour vous aider à faire vos premiers pas. Le lien ci-dessous vous permettra de vous familiariser d’avantage avec Kotlin et l’univers de développement Android :

https://kotlinlang.org/docs/reference/android-overview.html

Merci pour cette lecture et ‘Happy Coding !’

——— Une carrière signée Android ———-

Si vous êtes déjà un développeur Android capable de produire du code propre écrit en Kotlin au sein de l’univers d’applications mobiles et cela auprès d’entreprises innovantes, je vous prie de trouver quelques liens interessants ci-dessous:

https://www.lesjeudis.com/metiers

ou bien

https://www.lesjeudis.com/technologies

Data Full Stack
Category: Développement

About Dorian H Mekni

Dorian.H Mekni est un expert en Data Mining. Il est féru de techniques algorithmiques et de développement d’application mobiles en language natif : Swift | Kotlin.
Ce 'Data Full-Stack' travaille en freelance PRO.
Dorian est aussi membre et auteur chez Data Science Central pour lequel il publie des articles sur les Data Structures et Algorithmes: https://www.datasciencecentral.com/profiles/blog/list?user=31ps4xlxoljkx.

Previous Post: « banniere sur les Nouvelles tendances en webdesign 8 tendances webdesign à suivre pour 2021
Next Post: Astuces pour la recherche d’emploi en période de pandémie. »

Reader Interactions

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée.

Sidebar

Rechercher

MOA et MOE

MOA / MOE : Quelles sont les différences ?

Read moreMOA / MOE : Quelles sont les différences ?
développeurs front end et backend

Développement front-end et back-end : Quelles différences ?

Read moreDéveloppement front-end et back-end : Quelles différences ?
lignes de code Java

‘Java’ est-il le meilleur langage de programmation pour les débutants?

Read more‘Java’ est-il le meilleur langage de programmation pour les débutants?
vb net ou c# comme langage de programmation

C# ou VB .NET, le choix du langage

Read moreC# ou VB .NET, le choix du langage

Comment utiliser le framework React JS

Read moreComment utiliser le framework React JS
1033853617

Les frameworks de programmation les plus populaires en France 

Read moreLes frameworks de programmation les plus populaires en France 
Les métiers du marketing digital

Les métiers du marketing digital les plus demandés en 2019

Read moreLes métiers du marketing digital les plus demandés en 2019
signe langage python sur ordinateur portable

Web Scraping avec python

Read moreWeb Scraping avec python
757797865

Qu’est-ce que le DevOps et en quoi consiste ce métier ?

Read moreQu’est-ce que le DevOps et en quoi consiste ce métier ?
smartphone et ordinateur avec banniere sur kotlin comment langage de developpement pour android

Kotlin pour le développement Android

Read moreKotlin pour le développement Android
Jeunes stagieres informatiques dans le domaine de la robotique

Le guide ultime pour bien préparer son stage informatique

Read moreLe guide ultime pour bien préparer son stage informatique
Pourquoi choisir symfony pour un projet web featured banner 800px

Pourquoi choisir Symfony pour un projet web ? 

Read morePourquoi choisir Symfony pour un projet web ? 

Nos Categories

Blockchain

Conseils

Contenu Top

Design

Développement 

Digital

E-commerce

Evénements

Interviews

Marché de l’emploi

Marketing

Réseaux et Systèmes

SEO

Web

Candidats

Emploi par région

Emploi par métier

Emploi par technologie

Emploi par industrie

Emploi par type de contrat

Tous les emplois

Fiches métiers informatiques

Nos Services

S’inscrire

Annonces

Évènements

Tests

Magazine

Salon LesJeudis

Support

Nous contacter

Vous êtes recruteur ?

A Propos

Conditions générales d’utilisation

Politique de confidentialité

Droit d’accès aux données 

personnelles

Social

Facebook

Twitter

Linkedi

Nos Categories

Blockchain

Conseils

Contenu Top

Design

Digital

E-commerce

Evénements

Interviews

Marché de l’emploi

Marketing

Réseaux et Systèmes

SEO

Web

Candidats

Emploi par région

Emploi par métier

Emploi par technologie

Emploi par industrie

Emploi par type de contrat

Tous les emplois

Fiches métiers informatiques

Support

Nous contacter

Vous êtes recruteur ?

A Propos

Conditions générales d’utilisation

Politique de confidentialité

Droit d’accès aux données 

personnelles

Social

Facebook

Twitter

Linkedi

Nos Services

S’inscrire

Annonces

Évènements

Tests

Magazine

Salon LesJeudis

Les Jeudis

© 2021 Groupe Les Jeudis