Dernière modification : Dec 08 , 2024

Groovy et ses caractéristiques

Première version en 2007.

La version Groovy 2.5 est la plus populaire.

La version 4.0.15 est l'actuelle version stable.

La version 5.0 est prévue pour bientôt (actuellement en Alpha)

Après plusieurs années de gestation, la version 4.0 apporte de nombreuses
nouvelles fonctionnalités.

Fonctionnalités principales de Groovy

Groovy est un langage de programmation objet.

Il repose sur la spécification de la JVM.

Il reprend une partie de la syntaxe Java et est compatible avec le code compilé pour la JVM ( que cela soit du Java, Groovy, Kotlin etc)

Il offre des fonctionnalités inspirées d'autres langages.

C'est un langage interprété ( bien qu'il puisse être également compilé)

Caractéristiques particulières 1/2

  • typage dynamique (à la JS) et typage statique ;
  • les listes, maps et les expressions régulières sont nativement supportées ;
  • gestion des closures et lambas ( avant Java 8)
  • surcharge des opérateurs
  • gestion des template strings
  • nombreux keywords optionnels

Caractéristiques particulières 2/2

  • Langage interprété ( pas de cycle de compilation)
  • Expressif et concis
  • Langage dynamique ( création de DSL)
  • Intégration à différents systèmes
  • Accès aux API du JDK
  • Open-source

Helloworld

  println "Hello Groovy"

`
Pour lancer le programme :

  groovy hello.groovy
  • Les parenthèses sont optionnelles
  • Les point-virgules de fin sont optionnels
  • les déclarations de classes sont optionnelles
  • La méthode main est optionnelle
  • Groovy possède différents types de chaînes de caractères
  • System.out est implicite. Groovy importe automatiquement les imports
java.lang.*, `groovy.lang.*, groovy.util.*, java.util.*, java.net.*, java.io.*

Exemple

  list = ["Rod", "Carlos", "Chris"]
  shorts = list.findAll { it.size() <= 4 }
  shorts.each { println it }    

Installateur

Groovy fournit un interpréteur en ligne de commande ce qui vous permet de coder des scripts Groovy facilement.

https://groovy.apache.org/download.html

Groovy et ses caractéristiques

Created by Sylvain Leroy