Précédent   Forum des professionnels en informatique > Le club des professionnels en informatique > Actualités
Actualités L'actualité des sociétés du secteur informatique
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 11/11/2011, 18h55   #1
Coordinateur publications
 
Avatar de Idelways
 
Développeur Ruby on Rails / iOS et journaliste
Inscription : juin 2010
Messages : 1 105
Détails du profil
Informations professionnelles :
Activité : Développeur Ruby on Rails / iOS et journaliste

Informations forums :
Inscription : juin 2010
Messages : 1 105
Points : 24 337
Points : 24 337
Par défaut Groovy 2.0 : plus statique pour un meilleur dynamisme, vérification des types et compilation statiques sur B1

Groovy 2.0 : plus statique pour un meilleur dynamisme
Invoke Dynamic, vérification des types et compilation statiques sur la première bêta




L'équipe du projet Groovy surprend la communauté du langage en sortant la version 2.0 en bêta, alors que c'est la 1.9 qui était attendue.

Comme c'est tendance actuellement, Groovy abandonne la numérotation des versions majeures en deuxième position (1.x), où la version 2.0 devient « mythique et semble ne jamais vouloir arriver », explique Guillaume Laforge, manager du projet.

Le projet aura désormais une évolution majeure chaque année, mais cette version 2.0 n'est pas pour autant qu'un saut de version de façade. Elle marque un virage important dans l'identité du langage.

Partant d'un simple constat, le langage de script de la JVM prendra quelques distances du dynamisme qui le distingue de Java. Les mainteneurs du projet ont constaté que l'utilisation type qu'en font les développeurs ne tire pas particulièrement parti des aspects dynamiques du langage. Ce dernier serait utilisé « comme une sorte de meilleure syntaxe pour Java », explique Laforge.

D'où l'introduction de la vérification statique du type, qui peut être exigée au compilateur à l'aide de l'annotation @TypeChecked. Elle peut prendre effet sur toute une classe ou être limitée à la portée d'une méthode.

Cette nouvelle facette du langage n'est pas entièrement implémentée et son comportement pourra être influencé par les avis de la communauté d'ici la sortie de la version finale prévue début 2012. Elle inclut toutefois l'inférence de type, le typage sensible au flux, les blocs instanceof, etc.

Code :
1
2
3
4
5
6
7
8
import groovy.transform.TypeChecked

@TypeChecked
void method(String message) {
   if (rareCondition) {
        println "Did you spot the error in this ${message.toUppercase()}?"
   }
}
Exemple de l'utilisation de @TypeChecked sur une méthode

L'introduction de ces nouveautés permet au nouveau compilateur Groovy de traiter le code de manière plus intelligente. Dans certaines situations, il pourra générer ainsi des appels directs de méthodes (comme en Java), sans passer par le protocole de Meta-Objet de Groovy.
Ce remaniement du compilateur et la vérification des types sont grandement inspirés de l'extension Groovy++.

Groovy 2.0 tire profit de l'instruction de Bytecode et des API « Invoke Dynamic » introduites par JDK 7 à l'intention des langages dynamiques. Cette intégration permettra d'améliorer les performances des aspects dynamiques du langage de manière significative, affirme Guillaume Laforge.


Cette Beta est disponible en téléchargement sous Licence Apache 2.0 sur cette page

Sources :
Blog officiel du projet
Blog de Cédric Champeau (détails sur la vérification statique de type)

Et vous ?

Suivez-vous l'évolution du langage Groovy ?
Que pensez-vous de l'introduction de ces nouveautés ?
Idelways est déconnecté   Envoyer un message privé Réponse avec citation 31
Réponse Actualité déjà publiée
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h49.


 
 
 
 
Partenaires

Hébergement Web