IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Groovy 2.3 disponible avec le support de Java 8
La version majeure du langage pour la JVM améliore son analyseur syntaxique JSON

Le , par Arsene Newman

188PARTAGES

1  0 
Guillaume Laforge, chef du projet Groovy, a récemment annoncé la sortie d’une nouvelle version majeure du langage. Cette dernière intervient presque deux ans près la sortie de la version 2.0 (juillet 2012).

Pour rappel, Groovy est un langage agile et dynamique destiné à la plateforme Java. Il est inspiré de plusieurs langages comme : Python, Ruby et Smalltalk.

L’une des principales nouveautés avec la version 2.3 est la prise en charge de Java 8, ce qui représente une avancée majeure pour le langage et une amélioration des performances au niveau du bytecode JVM. Toutefois, d’autres nouveautés sont au programme comme :
  • l’introduction du nouveau concept « Traits », qui vient s’ajouter aux classes et aux interfaces. Il permet de décrire la réutilisation d’un comportement par une classe ;
  • l’amélioration des performances de la transformation du code lors de la compilation à travers l’ajout de certaines méthodes :@TailRecursive; @Builder; @Sortable; @SourceURI et la mise à jour de d’autres : @Delegate; @BaseScript ;
  • l’introduction du nouveau module NIO (NIO2) pour Java 7 et versions suivantes ;
  • le support de JUnit 4 à travers la nouvelle classe GroovyAssert ;
  • l’amélioration des performances de l’analyseur syntaxique JSON et l’ajout du JsonSlurper pour faciliter et étendre les possibilités de l’analyseur syntaxique JSON ;
  • l’amélioration de certains outils comme : Groovysh et GroovyConsole ;
  • l’introduction du template du langage : markup template.


Ainsi, avec l’introduction de ces nouveautés, tout porte à croire que Groovy a de beaux jours devant lui. Reste à savoir si l’avenir nous le prouvera rapidement ou pas.

Source : Notes de version

Et vous ?

Utilisez-vous Groovy ? Que pensez-vous des nouveautés introduites dans cette nouvelle version ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de barmic
Membre actif https://www.developpez.com
Le 19/05/2014 à 19:06
Ça tombe bien groovy est typé (pas forcément statiquement c'est optionnel).
Ça en dit long sur ta maîtrise du sujet (pour quelqu'un d'aussi pédant)…
Sais-tu au moins qu'il n'y a pas que le typage statique et le non typage ? (il y a différentes forces, le typage peut être dynamique (ducktyping), tu peux avoir de l'inférence de type,…)
Le problème n'est pas souvent le système de type, mais plus l'incapacité des développeurs à s'en servir correctement. Quelque soit le système de type, c'est un outil du développeur et ce dernier doit s'en servir en connaissance de cause, on écris pas un programme statiquement typé à la C++ comme on écris un programme haskel qui utilise l'inférence de type. C'est la volonté d'utiliser un langage au typage dynamique de la même façon qu'on écris un programme Java qui pose problème.

Mis à part les lambda, il reste encore beaucoup de différence entre Java (même 8 ou ce que sera 9) et groovy. Groovy est bien plus agréable pour faire certains pattern comme la composition et cette version en ajoute d'autres avec les traits ou les builders. Le fait de permettre d'appliquer explicitement la récursion terminale est très pratique et permet d'écrire des algorithmes très expressifs tout en restant performants.
1  0 
Avatar de professeur shadoko
Membre chevronné https://www.developpez.com
Le 20/05/2014 à 9:51
Citation Envoyé par super_navide Voir le message
Je pense que Java 8 avec les lambda rend totalement dispensable groovy , les langages non typé sont une plaie pour la maintenance et les études d’impact.
Non je pense que groovy est a éviter.
Comme toujours dans les guerres de religion il faut replacer les choses dans un contexte.
On peut tout à fait argumenter que Groovy est à éviter dans certains contextes et est très utile dans d'autres.
Exemples:
- je travaille sur un très gros projet international qui implique de nombreuses équipes: c'est du Java avec tous les avantages d'un typage fort et d'une modularité tout à fait gérable
- dans ce même projet certains programmes de test sont écrit en Groovy: c'est sensé car ici il s'agit pratiquement de scripts qu'on modifie rapidement (c'est très court)
- toujours dans ce même projet on fait des maquettes en Groovy pour explorer des concepts (ce sera des codes jetables ensuite) .... quel mal à ça?
- mais il y aussi dans le "corps" du projet un petit DSL écrit en Groovy pour exploiter une ressource de configuration plutôt complexe : les utilisateurs ont été réticents au début (XML quel bonheur n'est ce pas?) puis ont découvert les charmes d'un DSL plus dynamique. Personne n'en est mort (jusque là)
1  0 
Avatar de Philippe Bastiani
Membre éprouvé https://www.developpez.com
Le 20/05/2014 à 14:55
Citation Envoyé par super_navide Voir le message
Je pense que Java 8 avec les lambda rend totalement dispensable groovy , les langages non typé sont une plaie pour la maintenance et les études d’impact.
Non je pense que groovy est a éviter.
Bonjour Super_navide,
Pourquoi parles tu d'un langage non typé
Tu peux par exemple écrire
Code : Sélectionner tout
1
2
String txt= "typage" ... typage fort à la Java
def txt= "typage" ... typage dynamique de Groovy
Bref, Groovy te laisse le choix d'un typage statique ou d'un typage dynamique ! Bref, je vois cette approche comme un plus bien que je sois partisan du typage fort...
Réduire la comparaison Groovy/Java aux lambdas est, IMHO, trop rapide ! Groovy en matière de programmation fonctionnelle apporte pas mal de chose qu'il faudrait aussi comparer à Java8...
Ensuite Groovy t'apporte des facilités en matière de script et/ou DSL (c.f. gradle par exemple).

Donc non Super_navide, dans certains contextes Groovy peut être préférés à Java !

A+
Philippe

P.S. : il serait intéressant que les experts Groovy nous montrent les différentes approches fonctionnelles de Groovy avec celles de Java8 !
0  0 
Avatar de vladimir1118
Futur Membre du Club https://www.developpez.com
Le 20/05/2014 à 8:41
Il est dommage que les gens ne puissent plus écrire de messages sur les forums sans devenir agressifs et insulter les autres qui ne font qu'émettre un avis.
Je pense que le message de super_navide est très clair et n'a rien de "pédant". Il exprime simplement la difficulté de maintenir et faire évoluer une application importante qui a été écrite dans un langage n'ayant pas un typage statique fort (l'expression "langage non typé" est très usuelle et comprehensible par tous). C'est l'avis de nombre de développeurs et un fan de Groovy peut argumenter en faveur de ce langage avec de vrais arguments et de façon pacifique. Insulter quelqu'un via internet n'est pas vraiment une preuve de courage, c'est simplement le témoignage de son incapacité à participer à un vrai débat.
0  1 
Avatar de super_navide
Nouveau Candidat au Club https://www.developpez.com
Le 19/05/2014 à 15:44
Je pense que Java 8 avec les lambda rend totalement dispensable groovy , les langages non typé sont une plaie pour la maintenance et les études d’impact.
Non je pense que groovy est a éviter.
0  2