Qualiopi
Kotlin : Développement Moderne et Multiplateforme (JVM, Native, JS)
De la syntaxe concise à l'interopérabilité Java, gérez la programmation fonctionnelle, les coroutines et les tests pour des applications robustes.
4 jours
2 800 € HT
Kotlin 2.0
JVM
Coroutines
JUnit 5
Mockito
KMP
Gradle
Intéressé par cette formation ?
Contactez-nous pour planifier une session.
Objectifs pédagogiques
- Maîtriser la syntaxe et les paradigmes objet et fonctionnel de Kotlin.
- Éliminer les erreurs de type NullPointerException grâce au système de types.
- Optimiser les performances via les séquences et les fonctions inline.
- Développer des applications asynchrones performantes avec les coroutines.
- Savoir concevoir des API flexibles avec les génériques avancés et la délégation.
Programme
Jour 1 : Fondamentaux et Syntaxe Expressive
- Introduction : Historique (JetBrains), philosophie de conception et interopérabilité 100% avec Java.
- Les Bases : Inférence de type, mutabilité (var vs val), constantes (const val) et types primitifs.
- Sécurité Null-Safety : Types nullables (?), appels sécurisés (?.), opérateur Elvis (?:) et assertion non nulle (!!).
- Structures de contrôle : Expressions if (ternaire), boucles for, while et la puissance du when.
- Atelier : Exercices de syntaxe de base et manipulation de chaînes (Templates).
Jour 2 : Fonctions, Programmation Fonctionnelle et Séquences
- Fonctions : Citoyens de premier ordre, paramètres par défaut, arguments nommés et fonctions d'extension.
- Concepts Avancés : Fonctions infix, récursivité de queue (tailrec), fonctions inline et surcharge d'opérateurs.
- Lambdas & Ordre Supérieur : Syntaxe lambda, captures de variables et DSL.
- Séquences : Évaluation paresseuse vs Collections standard, chaînage d'opérations et performances.
- Atelier : Développement d'un petit moteur de calcul utilisant des fonctions d'ordre supérieur et des séquences.
Jour 3 : Programmation Orientée Objet Moderne
- Classes et Héritage : Classes final par défaut, mot-clé open, constructeurs primaires et secondaires.
- Spécialisations : data class (POJO), sealed class (hiérarchies restreintes), enum class et object (Singletons).
- Propriétés & Délégation : lateinit, initialisation paresseuse (by lazy) et modificateurs de visibilité (internal, etc.).
- Génériques & Réflexion : Covariance (out), contravariance (in), fonctions réifiées et introspection dynamique.
- Atelier : Modélisation d'un système métier complexe avec classes scellées et génériques.
Jour 4 : Concurrence, Écosystème et Qualité
- Coroutines : Threads légers, fonctions suspendues (suspend), launch vs async et contextes.
- Gestion du Cycle de Vie : Job, Scope (Global vs Local) et Dispatchers (Main, IO, Default).
- Robustesse : Gestion des exceptions et fonctions Fail-Fast (require, check, error).
- Tests unitaires : Utilisation de JUnit 5 et Mockito adaptés à Kotlin.
- Atelier Final : Création d'un client HTTP asynchrone avec gestion d'erreurs et tests automatisés.
Prérequis
- Maîtrise de l'algorithmique et d'un langage de programmation orienté objet (Java, C#).
- Environnement technique : IntelliJ IDEA, JDK 21+ et Git installés.
Public cible
- Développeurs Java souhaitant migrer vers Kotlin.
- Développeurs Android ou Fullstack visant le multiplateforme (KMP).
Prochaines sessions
Aucune session planifiée.
Contactez-nous pour organiser une session.
Contactez-nous pour organiser une session.
Formations liées
Java Expert : Des Fondamentaux aux Fonctionnalités Avancées (JDK 24)
Devenez expert Java : maîtrisez la syntaxe, la programmation réactive, l'IoC avec Spring, et les dernières nouveautés du JDK 24 pour des applications robustes.
5 jours
Kotlin Multiplatform : Mutualisez votre Logique Métier entre iOS et Android
Apprenez à partager votre code métier entre plateformes tout en gardant des UI natives.
3 jours
Développement d'Applications d'Entreprise avec Spring Boot
Apprenez à concevoir des API REST robustes, gérer la persistance des données avec JPA/Hibernate et sécuriser vos applications avec Spring Security.
4 jours
Micronaut : Microservices Modulaires & Serverless
Créez des applications ultra-légères. Apprenez à exploiter la compilation AOT de Micronaut pour des microservices performants et des fonctions Serverless.
3 jours
Quarkus : Développement Java Cloud-Native & GraalVM
Maîtrisez le framework "Supersonic Subatomic" : démarrage instantané, faible mémoire, compilation native GraalVM et programmation réactive.
3 jours
Prêt à vous former ?
Contactez-nous pour obtenir un devis personnalisé.