Présentation du langage Groovy

Résumé

Dans ce chapitre nous allons voir le language Groovy, les principales structures, opérateurs et fonctionnalités du langage dont notamment :

  • La promesse de Groovy et ses cas d’usage
  • Caractéristiques du langage : Typage, Dynamicité, DSL, Annotations, programmation fonctionnelle
  • Les différences avec Java
  • Le SDK, les outils et intégration dans les IDEs
  • Gestion de dépendances avec Grape
  • Groovy et les tests
  • La documentation

Leçons disponibles :

Les bases du language Groovy

Résumé

Dans ce chapitre nous allons voir le language Groovy, les principales structures, opérateurs et fonctionnalités du langage dont notamment :

  • Base de la syntaxe (Commentaires, variable, Classe, mots-clés, opérateurs)
  • Structure d’un programme, Classe vs Script
  • Conventions de nommage et bonnes pratiques
  • Typage : Chaînes de caractère, Liste, Map
  • Programmation Orienté Objet (Classe, Interface, Constructeur, Héritage, ...)
  • Les Closure : Définition et utilisation dans un méthode, assignation dans une variable,méthode d’instance comme closure
  • Paramétrisation d’un closure, this, delegate et owner
  • Comparaison avec les lambda expression, Closure et DSL

Leçons disponibles :

Travailler avec Groovy

Résumé

Dans ce chapitre nous allons utiliser les fonctionnalités avancées de Groovy dont les opérateurs spécifiques à Groovy (par rapport à Java), les API que Groovy fournit pour simplifier le développement de scripts et l'utilisation de dépendances Maven.

  • Opérateurs spécifiques de Groovy (Propagation, « as », Elvis, safe navigation)
  • Opérateur sur les collections
  • Opérateurs d’expression régulière
  • Principales APIs (Logging, Util, UI, XML, JSON, Sql, Servlet, Model)
  • Intégration avec Java
  • Gestion de dépendances avec Grape
  • Support de Groovy pour les tests, intégration avec JUnit

Leçons disponibles :

Méta-programming à l’exécution

Résumé

Dans ce chapitre nous allons le language Groovy, les principales structures, opérateurs et fonctionnalités du langage dont notamment :

  • Principes, le protocole métaobject (MOP), Types d’objet Groovy (POJO, POGO, Intercepteur)
  • Intercepteurs fournis par le langage, l’interface GroovyInterceptable
  • Classe méta personnalisée
  • ExpandoMetaClass, application aux tests
  • Les modules d’extension

Leçons disponibles :

Méta-programming à la compilation

Résumé

Dans ce chapitre nous allons voir comment transformer son code avec de simples annotations Groovy :

  • Principes
  • Annotations de génération de code
  • Annotation pour les design patterns
  • Annotations de Logging
  • Annotations pour la concurrence
  • Directives de compilation

Leçons disponibles :