Prenez contact avec nous

Plan du cours

Introduction à Groovy

  • Introduction à Apache Groovy
  • Historique et évolution de Groovy
  • Groovy et la machine virtuelle Java
  • Groovy en tant que langage de script et de programmation
  • Cas d'utilisation courants de Groovy
  • Groovy dans les projets basés sur Java
  • Avantages de l'utilisation de Groovy aux côtés de Java
  • Vue d'ensemble de l'application d'exemple

Vue d'ensemble des fonctionnalités de Groovy

  • Typage dynamique et typage statique facultatif
  • Capacités de script de Groovy
  • Syntaxe concise et améliorations du langage
  • Fermetures (closures) et programmation fonctionnelle
  • Collection Groovy et API améliorées
  • Surcharge d'opérateurs
  • Interpolation de chaînes
  • Navigations sûres et opérateur Elvis
  • Développement de langages spécifiques à un domaine (DSL)
  • Capacités de méta-programmation
  • Groovy Development Kit (GDK)

Mise en place de l'environnement de développement

  • Installation et configuration de Groovy
  • Travail avec les distributions Groovy
  • Utilisation de Groovy depuis la ligne de commande
  • Exécution de scripts Groovy
  • Configuration d'une IDE
  • Création d'un projet Groovy
  • Gestion des dépendances
  • Intégration de Groovy avec les projets Java
  • Configuration de l'environnement de développement pour les conteneurs

Écriture de votre première application Groovy

  • Création d'un script Groovy de base
  • Compréhension de la structure des scripts Groovy
  • Exécution des applications Groovy
  • Utilisation de la déclaration println
  • Travail avec des variables
  • Définition de méthodes
  • Ajout de commentaires et de documentation
  • Construction d'une application d'exemple simple
  • Compilation du code Groovy

Se familiariser avec la syntaxe de Groovy

  • Declarations et expressions Groovy
  • Points-virgules et éléments de syntaxe facultatifs
  • Variables et constantes
  • Typage dynamique et explicite
  • Littéraux de chaînes et interpolation
  • Chaînes sur une seule ligne et multi-lignes
  • Opérateurs et expressions
  • Opérateurs Groovy et raccourcis
  • Gestion des valeurs nulles
  • Navigations sûres
  • Opérateur Elvis
  • Assignation multiple

Utilisation des types de données et des collections de Groovy

  • Types primitifs et types d'objets
  • Chiffres et opérations numériques
  • Chaînes et caractères
  • Booléens
  • Dates et valeurs liées au temps
  • Listes
  • Cartes (Maps)
  • Ensembles (Sets)
  • Intervalles (Ranges)
  • Itération sur les collections
  • Transformations de collections
  • Filtrage et recherche dans les collections
  • Tri et regroupement de données
  • Méthodes de collection Groovy

Utilisation des fermetures (closures) de Groovy

  • Compréhension des fermetures
  • Syntaxe des fermetures
  • Paramètres de fermetures
  • Paramètres implicites de fermetures
  • Appel des fermetures
  • Fermetures en tant que variables
  • Passage de fermetures à des méthodes
  • Retour de fermetures depuis des méthodes
  • Fermetures et collections
  • Utilisation des fermetures pour le filtrage et la transformation
  • Portée et capture de variables
  • Fermetures pour la programmation fonctionnelle
  • Modèles pratiques de fermetures

Contrôle du flux du programme avec les structures de contrôle de Groovy

  • Declarations conditionnelles
  • if et else
  • Conditions imbriquées
  • Declarations switch
  • Boucles et itération
  • for, while, et do-while
  • Intervalles dans les boucles
  • Utilisation des fermetures pour l'itération
  • break et continue
  • Gestion des exceptions
  • try, catch, et finally
  • Lancer des exceptions personnalisées
  • Fonctionnalités de flux de contrôle spécifiques à Groovy

Mise en œuvre de la programmation orientée objet (POO) dans votre application

  • Définition de classes Groovy
  • Propriétés et champs
  • Constructeurs
  • Méthodes
  • Encapsulation
  • Héritage
  • Interfaces
  • Classes abstraites
  • Polymorphisme
  • Écrasement de méthodes
  • Surcharge de méthodes
  • Getters et setters Groovy
  • Traits
  • Énumérations (Enums)
  • Création de modèles de domaine pour l'application d'exemple

Méta-programmation à l'exécution et à la compilation

  • Introduction à la méta-programmation Groovy
  • Appel dynamique de méthodes
  • Objets Expando
  • Manipulation dynamique de méthodes et de propriétés
  • Catégories et extensions
  • MetaClass
  • Ajout dynamique de méthodes
  • Interception des appels de méthodes
  • Transformations à la compilation
  • Transformations AST courantes
  • Utilisation responsable de la méta-programmation
  • Exemples pratiques de méta-programmation

Travail avec les constructeurs (Builders)

  • Introduction au motif constructeur (builder pattern)
  • Constructeurs Groovy et leur but
  • Création de structures hiérarchiques
  • Constructeurs XML
  • Constructeurs JSON
  • Génération de balisage HTML et markup
  • Configuration de la sortie des constructeurs
  • Utilisation des fermetures avec les constructeurs
  • Création de constructeurs personnalisés
  • Application des constructeurs dans les langages spécifiques à un domaine

Accès à une base de données avec Groovy

  • Concepts de connectivité de base de données
  • Connexion des applications Groovy aux bases de données
  • JDBC et API de base de données Groovy
  • Configuration des connexions de base de données
  • Exécution de requêtes SQL
  • Lecture des résultats de requêtes
  • Insertion, mise à jour et suppression de données
  • Requêtes paramétrées
  • Transactions
  • Gestion des exceptions de base de données
  • Travail avec Groovy SQL
  • Construction de la fonctionnalité de base de données pour l'application d'exemple

Appel de Java depuis Groovy

  • Interopérabilité Groovy et Java
  • Utilisation de classes Java depuis Groovy
  • Appel de méthodes Java
  • Travail avec des bibliothèques Java
  • Utilisation des collections Java
  • Gestion des exceptions Java
  • Syntaxe Groovy comparée à la syntaxe Java
  • Appel de code Groovy depuis Java
  • Mélange de fichiers source Groovy et Java
  • Intégration de Groovy dans des applications Java existantes
  • Meilleures pratiques d'interopérabilité

Connexion à des services et applications REST

  • Introduction aux API REST
  • Concepts HTTP pour les applications Groovy
  • Envoi de requêtes HTTP
  • Gestion des opérations GET, POST, PUT et DELETE
  • Travail avec des paramètres de requête et des en-têtes
  • Traitement des réponses JSON
  • Construction de corps de requête JSON
  • Gestion de l'authentification
  • Gestion des erreurs HTTP
  • Consommation de services REST externes
  • Intégration de la fonctionnalité REST dans l'application d'exemple

Travail avec le GDK

  • Introduction au Groovy Development Kit
  • API Java améliorées
  • Travail avec les chaînes
  • Collections améliorées
  • Opérations sur les fichiers et les répertoires
  • Lecture et écriture de fichiers
  • Travail avec les flux
  • Traitement du XML
  • Traitement du JSON
  • Travail avec les dates et l'heure
  • Méthodes utilitaires et API de commodité
  • Sélection des fonctionnalités GDK appropriées

Tests unitaires d'une application Groovy

  • Introduction aux tests d'applications Groovy
  • Concepts de développement piloté par les tests
  • Rédaction de tests unitaires
  • Utilisation de cadres de test
  • Structuration des classes de test
  • Assertions
  • Tests de classes et de méthodes
  • Tests de fermetures
  • Tests d'exceptions
  • Simulation de dépendances (Mocking)
  • Tests pilotés par les données
  • Tests de fonctionnalités liées à la base de données
  • Tests d'intégrations REST
  • Exécution et analyse des résultats de test

Dépannage

  • Diagnostic des erreurs de syntaxe Groovy
  • Débogage des erreurs d'exécution
  • Gestion des problèmes de compilation
  • Dépannage des problèmes d'interopérabilité Java
  • Débogage des fermetures et des opérations de collection
  • Investigation des problèmes de connectivité de base de données
  • Dépannage des intégrations d'API REST
  • Débogage du comportement de la méta-programmation
  • Utilisation de la journalisation et des outils de diagnostic
  • Exercices pratiques de dépannage

Résumé et conclusion

  • Révision des fondamentaux du langage Groovy
  • Révision de la syntaxe, des types et des collections
  • Révision des fermetures et de la programmation fonctionnelle
  • Révision de la programmation orientée objet
  • Révision de la méta-programmation et des constructeurs
  • Révision de l'intégration de base de données et de REST
  • Révision de l'interopérabilité Groovy et Java
  • Révision des capacités du GDK
  • Révision des pratiques de test
  • Meilleures pratiques pour le développement d'applications Groovy
  • Exercice final pratique
  • Questions et discussion

Pré requis

  • Expérience de la programmation dans un langage de programmation quelconque
 21 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (1)

Cours à venir

Catégories Similaires