SlideShare une entreprise Scribd logo
Formation
Kotlin
Le Guide du Débutant
Une formation
Fabien BRISSONNEAU
Une formation
Introduction
1. L’origine et les outils
2. La syntaxe de base
3. La gestion des nullables
4. La programmation fonctionnelle
5. Les classes et fonctions génériques
6. Les collections et séquences
7. La programmation orientée objets
Conclusion
Plan de la formation
Une formation
Développeurs
Chef de projet
Décideurs
Public concerné
Une formation
Connaissances requises
Pratique d’un langage de programmation !
A vous de jouer !
Présentation du projet
de la formation
Une formation
Fabien BRISSONNEAU
Kotlin
Les sites de référence
Une formation
Fabien BRISSONNEAU
Une formation
Le site Kotlinlang.org
Les différents usages
Le site de JetBrains
Les versions de IntelliJ
Plan
Alphorm.com Formation Kotlin : Le Guide du Débutant
Les outils en ligne
de commande
Une formation
Fabien BRISSONNEAU
Une formation
Le compilateur
Le runtime Kotlin
Les scripts
Plan
Read-Eval-Print-Loop
Une formation
Fabien BRISSONNEAU
Une formation
Un moyen rapide de tester un code
REPL Kotlin en ligne
Plan
IntelliJ IDEA
Une formation
Fabien BRISSONNEAU
Une formation
Installer IntelliJ IDEA
Les menus et fonctionnalités
Ecrire et compiler
Plan
Les variables
Une formation
Fabien BRISSONNEAU
Une formation
Déclarer une variable
Typer une variable
Choisir mutable ou non
Plan
Les types
Une formation
Fabien BRISSONNEAU
Une formation
Les types numériques
Le type booléen
Les caractères et chaînes
Les tableaux
Plan
Les conversions
Une formation
Fabien BRISSONNEAU
Une formation
Les conversions standards
Le narrowing et widening
Plan
Les fonctions et paramètres
Une formation
Fabien BRISSONNEAU
Une formation
Les fonctions
Les paramètres
Les valeurs par défaut
Les paramètres nommés
L’écriture littérale
Plan
Les packages et imports
Une formation
Fabien BRISSONNEAU
Une formation
Les packages
Les visibilités de l’extérieur
Les imports
Les alias d’import
Plan
Les templates de string
Une formation
Fabien BRISSONNEAU
Une formation
Les chaînes de format
Les remplacements d’expressions
Plan
Les boucles
Une formation
Fabien BRISSONNEAU
Une formation
Avec while
Avec repeat
Avec un intervalle
Les break et continue
Plan
Les flux de contrôle
Une formation
Fabien BRISSONNEAU
Une formation
La logique conditionnelle
If et when sont des expressions
Conséquence sur la sécurité du code
Plan
La gestion des exceptions
Une formation
Fabien BRISSONNEAU
Une formation
Les exceptions de la JVM
Pas d ’exceptions gérées
Type de retour Nothing
Plan
Les valeurs nullables
Une formation
Fabien BRISSONNEAU
Une formation
Les types nullables
La conséquence sur le code
Plan
Les smart-cast et safe-calls
Une formation
Fabien BRISSONNEAU
Une formation
Les smart cast
L’opérateur ?.
L’opérateur !!.
Plan
L’opérateur elvis
Une formation
Fabien BRISSONNEAU
Une formation
Tester la valeur null
L’opérateur elvis
Plan
Les classes anonymes
Une formation
Fabien BRISSONNEAU
Une formation
Créer une classe à la volée
Mise en œuvre dans les listeners
Plan
Les fonctions anonymes
Une formation
Fabien BRISSONNEAU
Une formation
Créer une fonction à la volée
Appeler une fonction anonyme
Plan
Les lambdas expression
Une formation
Fabien BRISSONNEAU
Une formation
Créer une lambda expression
Inliner une lambda
Plan
Les fonctions locales
Une formation
Fabien BRISSONNEAU
Une formation
Créer une fonction locale
Comment les utiliser
Plan
L’écriture infixe
Une formation
Fabien BRISSONNEAU
Une formation
Exemple de fonctions infixe
Créer une fonction infixe
Plan
Les fonctions d’extension
Une formation
Fabien BRISSONNEAU
Une formation
Ecrire une fonction d’extension
Justifier une fonction d’extension
Plan
Les fonctions de premier
ordre
Une formation
Fabien BRISSONNEAU
Une formation
Exemple de fonctions de premier ordre
Créer une fonction de premier ordre
Alternatives
Plan
La surcharge
des opérateurs
Une formation
Fabien BRISSONNEAU
Une formation
Surcharger un opérateur
Intérêt de la surcharge d’opérateurs
Plan
Les types fonctions
Une formation
Fabien BRISSONNEAU
Une formation
Intérêt de réifier les fonctions
Créer des functors
Plan
Apply, let, run et also
Une formation
Fabien BRISSONNEAU
Une formation
Utiliser apply et let
Utiliser run et also
Plan
Les fonctions génériques
Une formation
Fabien BRISSONNEAU
Une formation
Pourquoi une fonction générique
Créer une fonction générique
Plan
Les classes génériques
Une formation
Fabien BRISSONNEAU
Une formation
Pourquoi une classe générique
Créer une classe générique
Plan
Les contraintes
Une formation
Fabien BRISSONNEAU
Une formation
Les limites de la généricité
Placer des contraintes
Plan
La covariance
Une formation
Fabien BRISSONNEAU
Une formation
La compatibilité entre classes
Quand ça suit l’héritage
A l’envers de l’héritage
Plan
Les classes de collection
Une formation
Fabien BRISSONNEAU
Une formation
Les interfaces de collections
Les classes d’implémentation
Plan
Les fonctions
de fabrication
Une formation
Fabien BRISSONNEAU
Une formation
Utiliser des fonctions de création
Les options de construction
Plan
La mutabilité
Une formation
Fabien BRISSONNEAU
Une formation
Les collections immutables
Les collections mutables
Plan
La covariance
Une formation
Fabien BRISSONNEAU
Une formation
La covariance
La contravariance
Plan
Les fonctions d’extension
Une formation
Fabien BRISSONNEAU
Une formation
Les différentes fonctions
La programmation fonctionnelle
Plan
Les séquences
Une formation
Fabien BRISSONNEAU
Une formation
Créer une séquence
La différence avec les collections
Plan
Les classes
Une formation
Fabien BRISSONNEAU
Une formation
Les classes
Les propriétés
Le constructeur
Les constructeurs secondaires
Plan
Les interfaces
Une formation
Fabien BRISSONNEAU
Une formation
Définir une interface
Implémenter une interface
Plan
L’initialisation retardée
Une formation
Fabien BRISSONNEAU
Une formation
Le comportement à l’initialisation
L’obligation de retarder
Les conséquences de l’oubli
Plan
L’héritage
Une formation
Fabien BRISSONNEAU
Une formation
Hériter d’une classe
Héritage bloqué ou non
Redéfinition possible ou non
Plan
Les data class
Une formation
Fabien BRISSONNEAU
Une formation
Créer une data class
Impact sur le code généré
La déclaration déstructurée
Plan
Les classes internes
Une formation
Fabien BRISSONNEAU
Une formation
Une classe imbriquée
Une classe interne
Une classe anonyme
Plan
Les objets
Une formation
Fabien BRISSONNEAU
Une formation
L’objet de classe anonyme
L’objet singleton
L’objet compagnon
Plan
Conclusion
Kotlin
Le Guide du Débutant
Une formation
Fabien BRISSONNEAU
Une formation
1. L’origine et les outils
2. La syntaxe de base
3. La gestion des nullables
4. La programmation fonctionnelle
5. Les classes et fonctions génériques
6. Les collections et séquences
7. La programmation orientée objets
Bilan
Alphorm.com Formation Kotlin : Le Guide du Débutant

Contenu connexe

PDF
Alphorm.com Formation Kotlin : Notions Avancées
PDF
Alphorm.com Formation Android et Kotlin : Formation complète
PDF
Alphorm.com Formation Laravel : Le Guide Complet du Débutant
PDF
Alphorm.com Formation Android et Kotlin : Développer avec Google Architecture...
PDF
Alphorm.com Formation Visual Studio Code et Emmet : Coder plus vite
PDF
Alphorm.com Formation Laravel : Construire une Application de A à Z
PDF
Alphorm.com Formation Unity 3D: L'essentiel
PPT
Formation C# - Cours 1 - Introduction, premiers pas, concepts
Alphorm.com Formation Kotlin : Notions Avancées
Alphorm.com Formation Android et Kotlin : Formation complète
Alphorm.com Formation Laravel : Le Guide Complet du Débutant
Alphorm.com Formation Android et Kotlin : Développer avec Google Architecture...
Alphorm.com Formation Visual Studio Code et Emmet : Coder plus vite
Alphorm.com Formation Laravel : Construire une Application de A à Z
Alphorm.com Formation Unity 3D: L'essentiel
Formation C# - Cours 1 - Introduction, premiers pas, concepts

Tendances (19)

PDF
Alphorm.com Formation WebDev 22 avancé
PDF
Alphorm.com Formation WinDev 25 : Les fondamentaux
PDF
Alphorm.com Formation Creo Parametric - L'essentiel
PDF
Alphorm.com Formation WinDev 22 - Expert
PDF
Alphorm.com Formation Autodesk Revit 2018 : Les nouveautés
PPTX
Comment devenir un bon programmeur en c#
PDF
Alphorm.com Formation SAP BusinessObjects Web Intelligence BI4 : Niveau Avancé
PDF
Alphorm.com Formation Cinema 4D R19: Perfectionnement
PDF
Alphorm.com Formation CSS : Ateliers Complets Avancés
PDF
Alphorm.com Formation Autodesk Inventor 2021 : Les fondamentaux
PDF
12 outils de vidéo + quiz
ODP
Presentation du framework symfony
PDF
Alphorm.com Formatio CSS Grid : Maîtriser le Responsiven
PDF
Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect...
PPTX
spiralconnect2
PPTX
Prototype formation spiralconnect
PDF
Alphorm.com Formation CSS : Niveau Avancé
PDF
Alphorm.com Formation Robot Structural Analysis Professional
PDF
Mieux Développer en PHP avec Symfony
Alphorm.com Formation WebDev 22 avancé
Alphorm.com Formation WinDev 25 : Les fondamentaux
Alphorm.com Formation Creo Parametric - L'essentiel
Alphorm.com Formation WinDev 22 - Expert
Alphorm.com Formation Autodesk Revit 2018 : Les nouveautés
Comment devenir un bon programmeur en c#
Alphorm.com Formation SAP BusinessObjects Web Intelligence BI4 : Niveau Avancé
Alphorm.com Formation Cinema 4D R19: Perfectionnement
Alphorm.com Formation CSS : Ateliers Complets Avancés
Alphorm.com Formation Autodesk Inventor 2021 : Les fondamentaux
12 outils de vidéo + quiz
Presentation du framework symfony
Alphorm.com Formatio CSS Grid : Maîtriser le Responsiven
Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect...
spiralconnect2
Prototype formation spiralconnect
Alphorm.com Formation CSS : Niveau Avancé
Alphorm.com Formation Robot Structural Analysis Professional
Mieux Développer en PHP avec Symfony
Publicité

Similaire à Alphorm.com Formation Kotlin : Le Guide du Débutant (20)

PPTX
Introduction Kotlin
PDF
Université des langages scala
PDF
Librairies Java qui changent la vie
PDF
Mémento caml
 
PDF
Polycope java enseignant
PDF
prise_en_main de la programmation avce kotlin.pdf
PDF
Les bases de la programmation en JAVA
PDF
Introduction à scala
PDF
Livret java
PDF
Meetup#1 talk#1
PDF
Alphorm.com Formation PHP 8 : Les bases de la POO
PDF
1Chapitre2_Généralités Java.pptx (1).pdf
PDF
Mix it 2011 - Clojure
PPTX
Javascript un langage supérieur
PDF
Javia formation-java-les-bases-et-perfectionnement
PDF
Introduction à la POO - cours 1h
PDF
Les concepts de la programmation fonctionnelle illustrés avec Java 8
PDF
Cours de Génie Logiciel / ESIEA 2016-17
PDF
Algorithmique et Programmation I - Lilia Ayadi.pdf
PDF
Javascript pour le développeur Java
Introduction Kotlin
Université des langages scala
Librairies Java qui changent la vie
Mémento caml
 
Polycope java enseignant
prise_en_main de la programmation avce kotlin.pdf
Les bases de la programmation en JAVA
Introduction à scala
Livret java
Meetup#1 talk#1
Alphorm.com Formation PHP 8 : Les bases de la POO
1Chapitre2_Généralités Java.pptx (1).pdf
Mix it 2011 - Clojure
Javascript un langage supérieur
Javia formation-java-les-bases-et-perfectionnement
Introduction à la POO - cours 1h
Les concepts de la programmation fonctionnelle illustrés avec Java 8
Cours de Génie Logiciel / ESIEA 2016-17
Algorithmique et Programmation I - Lilia Ayadi.pdf
Javascript pour le développeur Java
Publicité

Plus de Alphorm (20)

PDF
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
PDF
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
PDF
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
PDF
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
PDF
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
PDF
Alphorm.com Formation Sage : Gestion Commerciale
PDF
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
PDF
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
PDF
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
PDF
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
PDF
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
PDF
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
PDF
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
PDF
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
PDF
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
PDF
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
PDF
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
PDF
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
PDF
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
PDF
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Power BI : Analyse et Visualisation de Données

Alphorm.com Formation Kotlin : Le Guide du Débutant