Introduction à la formation Kotlin
Présentation générale, genèse du langage Kotlin
Différences majeures avec Java
Environnement de développement
Android Studio (IntelliJ IDEA) et Kotlin
Concepts fondamentaux et principes de programmation
Structure d’une application Kotlin
Installation et première ligne de code
Bases du langage Kotlin et premier pas
Variables
Null Safety
Types de base : nombres, caractères, booléens, arrays et strings
Inférence de type
Packages et imports
Expressions
Contrôle de flux
Conventions de codage (organisation du code, règles de nommage…)
Programmation Orientée Objet avec Kotlin
Classes et héritage
Propriétés et attributs
Interfaces
Polymorphisme et encapsulation
Modifier la visibilité des classes, objets, interfaces, constructeurs…
Extensions
Classes data et sealed
Génériques
Classes nested et enum
Objets Kotlin
Pattern de délégation (fonctions, propriétés)
Fonctions et lambdas
Déclarer des fonctions
Paramètres des fonctions
Expressions lambdas et fonctions anonymes
High-Order Functions
Fonctions inline pour améliorer les performances
Introduction aux coroutines
Aspects avancés
Déstructurer les déclarations
Collections et ranges
Types Checks et Casts
Surcharge des opérateurs
Annotations
La réflexion
Types Safe Builders et Aliases
Android et Kotlin
Android Studio
Organiser un projet Kotlin pour Android : string.xml, manifest et android file structure
Composants graphiques et interfaces utilisateurs
Découvrir les APIs principales
Gérer les flux JSON
Gérer les listes
Android KTX
Interopérabilité : Kotlin et Java
Appeler du code Java depuis Kotlin
Appeler Kotlin depuis Java
Typage dynamique
Outils
Documenter son code Kotlin
Utiliser Kapt, Gradle, Maven ou ANT
Plugins Kotlin