Kotlin - Avancé
4sh Learning
Non finançable CPF
Entreprise
En ligne
Présentiel
Public admis
Salarié en poste
Demandeur d'emploi
Entreprise
Etudiant
Prix
2100 €
Durée
21h en présentiel ou à distance
Niveau visé
Non diplômante
Pré-requis
- Cette formation s’adresse à des développeurs Kotlin qui souhaitent parfaire leur maîtrise du langage en produisant du code plus robuste et maintenable.
- Maîtriser les bases de la programmation objet
- Maîtriser les bases du langage Kotlin
Certifications
Qualiopi
Le plus de la formation
Apprenez l’utilisation de ce langage de programmation orienté objet.
Localité
En ligne
Vous pouvez suivre cette formation depuis chez vous ou depuis n’importe quel endroit à distance.
En présentiel
Découvrez les localités disponibles pour suivre cette formation en présentiel.
Objectifs
* Maîtriser les idioms Kotlin
* Savoir optimiser une fonction Kotlin en utilisation la “tail recursion” ou “inline”
* Savoir utiliser les interfaces fonctionnelles
* Maîtriser les fonctionnalités avancées de Kotlin pour exprimer un DSL
* Comprendre l’interopérabilité avec Java
* Maîtriser l’usage des coroutines
* Savoir faire communiquer des coroutines
* Savoir traiter des flux de données asynchrones
* Maîtriser l’écriture de code générique
* Comprendre la délégation pour favoriser la composition
* Savoir utiliser la méta programmation
* Savoir optimiser une fonction Kotlin en utilisation la “tail recursion” ou “inline”
* Savoir utiliser les interfaces fonctionnelles
* Maîtriser les fonctionnalités avancées de Kotlin pour exprimer un DSL
* Comprendre l’interopérabilité avec Java
* Maîtriser l’usage des coroutines
* Savoir faire communiquer des coroutines
* Savoir traiter des flux de données asynchrones
* Maîtriser l’écriture de code générique
* Comprendre la délégation pour favoriser la composition
* Savoir utiliser la méta programmation
Programme
1. Introduction
2. Retours sur les idioms Kotlin
* Class
* Singleton
* Expressions
* Null Safety
* Paramètre nommées, par défaut
* Data class
* Interpolation et chaines de caractère multiples
* Lambda
* Collections Immutables et Mutables
* Api Collections
* Séquence ou Iterable
* Scope Function
* Range
* Générer une séquence
3. Plus loin avec les fonctions et les lambdas
* tail recurcion
* Les fonctions locales
* inline
* Interface fonctionnelle
4. Créer un DSL
* “infix” pour simplifier la lecture
* Exprimer des type avec “type alias”
* Extension des fonctions et des propriétés
* Surcharge d’opérateur
* invoke avec un companion object
* La “Lambda” comme dernier paramètre
* Le receveur de “Lambda”
5. Interopérabilité avec Java
* Gestion de “null”
* La mapping des concepts Java
* Les annotations de compatibilité
* La réflexion Java
6. Introduction au coroutines
* Une coroutine
* Travailler avec du non bloquant
* Concurrence structurée
* Le Coroutine Builder
* Les fonctions “suspend”
7. Contrôler les coroutines
* Scope
* Context & Dispatchers
* Job & cancellation
8. Des coroutines qui communiquent
* Channels
* Producteur et consommateur
9. Traiter des flux avec les coroutines
* Flow
* CallbackFlow
* Opérations intermédiaires et terminales
* Composition
* shareIn
* Gestion d’erreur
10. Les génériques
* Déclarer un type générique
* Utiliser in, out,where
* Réifier un type générique
11. Délégation
* Héritage contre composition
* Déléguer une interface
* Déléguer une propriété
12. Réflexion
* KClass
* Les références de fonctions
* Les références de propriétés
13. Meta programmation
* Annotation processor
* Kotlin Symbol Processor
* Kotlin Compiler Plugins
14. Conclusion
2. Retours sur les idioms Kotlin
* Class
* Singleton
* Expressions
* Null Safety
* Paramètre nommées, par défaut
* Data class
* Interpolation et chaines de caractère multiples
* Lambda
* Collections Immutables et Mutables
* Api Collections
* Séquence ou Iterable
* Scope Function
* Range
* Générer une séquence
3. Plus loin avec les fonctions et les lambdas
* tail recurcion
* Les fonctions locales
* inline
* Interface fonctionnelle
4. Créer un DSL
* “infix” pour simplifier la lecture
* Exprimer des type avec “type alias”
* Extension des fonctions et des propriétés
* Surcharge d’opérateur
* invoke avec un companion object
* La “Lambda” comme dernier paramètre
* Le receveur de “Lambda”
5. Interopérabilité avec Java
* Gestion de “null”
* La mapping des concepts Java
* Les annotations de compatibilité
* La réflexion Java
6. Introduction au coroutines
* Une coroutine
* Travailler avec du non bloquant
* Concurrence structurée
* Le Coroutine Builder
* Les fonctions “suspend”
7. Contrôler les coroutines
* Scope
* Context & Dispatchers
* Job & cancellation
8. Des coroutines qui communiquent
* Channels
* Producteur et consommateur
9. Traiter des flux avec les coroutines
* Flow
* CallbackFlow
* Opérations intermédiaires et terminales
* Composition
* shareIn
* Gestion d’erreur
10. Les génériques
* Déclarer un type générique
* Utiliser in, out,where
* Réifier un type générique
11. Délégation
* Héritage contre composition
* Déléguer une interface
* Déléguer une propriété
12. Réflexion
* KClass
* Les références de fonctions
* Les références de propriétés
13. Meta programmation
* Annotation processor
* Kotlin Symbol Processor
* Kotlin Compiler Plugins
14. Conclusion
Financement facilité
Certification Qualiopi
13 années
d'expertise
Formateurs pro.
diplômés
Centre
À propos du centre 4sh Learning
4SH est organisme de formation, certifie´ QUALIOPI.
Pour de´velopper les compe´tences techniques de vos collaborateurs, 4SH Learning vous propose des formations standards et des workshops personnalise´s.
Pourquoi choisir 4SH Learning ?
Des formations concre`tes et ope´rationnelles
Des formations cohe´rentes pour construire et ope´rer des solutions “sur mesure”
Pour de´velopper les compe´tences techniques de vos collaborateurs, 4SH Learning vous propose des formations standards et des workshops personnalise´s.
- Formations techniques sur vos technologies
- Workshops personnalise´s sur vos architectures produits
- Formations sur les outils pour industrialiser votre production logicielle
Pourquoi choisir 4SH Learning ?
Des formations concre`tes et ope´rationnelles
- Nos formations sont issues de notre expe´rience sur les projets de nos clients.
- Nos formations sont construites par le biais de nos communaute´s dans le cadre de l’ame´lioration continue.
- Nos formateurs sont a` la fois experts sur le sujet de la formation et ope´rationnels sur des projets concrets.
- Des formations sur catalogue anime´es par notre e´quipe de formateurs experts.
- Des formations qui s’adaptent a` vos spe´cificite´s.
- Des workshop sur mesure (ateliers collaboratifs pour construire ensemble votre projet) :
- Architecture technique,
- Atelier de co-de´veloppement,
- Configuration et de´ploiement de votre usine logicielle.
Des formations cohe´rentes pour construire et ope´rer des solutions “sur mesure”
- Des formations cohe´rentes par rapport a` vos objectifs de construction d’application.
- Des formations qui couvrent e´galement les proble`mes de de´ploiement et les outils d’ame´lioration de la performance (pilotage).
Envie d’en savoir plus sur cette formation ?
Documentez-vous sur la formation

Ces formations peuvent vous intéresser

DATA ANALYST | Titre RNCP niveau 7 Bac +5 | co-certifiée école MINES...
À DISTANCE
Avis du centre
Témoignages

Administrateur Cloud DevOps - Alternance - Titre RNCP Niveau 6
MARSEILLE, LILLE, CAEN ET 10 AUTRE(S) LOCALITÉ(S)
Avis du centre
Témoignages

Réglementation DORA : préparez votre mise en conformité avec le...
BORDEAUX, DIJON, ANGERS ET 11 AUTRE(S) LOCALITÉ(S)
Offre spéciale
Avis du centre
Les formations les plus recherchées
Lyon
Toulouse
Marseille
Montpellier
Paris
Bordeaux
Dijon
Mâcon
Nantes
Rennes
Informatique CPF
Informatique en Ligne
Administrateur systeme
Administrateur systeme CPF
Administrateur systeme en Ligne
Technicien informatique
Technicien support informatique
Consultant en informatique
Spark
Devops
Intelligence artificielle
Machine learning
Vba
Growth hacking
Programmation
Administrateur systeme Villiers-le-Bel
Consultant en informatique Villiers-le-Bel
Devops Villiers-le-Bel
Spark Paris
Technicien informatique Paris
Technicien support informatique Villiers-le-Bel
Technicien support informatique Paris
Technicien informatique Nanterre
Spark Évry-Courcouronnes
Devops Paris