Pourquoi a-t-on autant parlé de langages de script à JavaOne?

(une petite révolution est en marche)

En ce qui me concerne, les trois points importants de JavaOne sont:

1/ Java EE 5 disponible!

2/ Swing et desktop Java toujours aussi sexy

3/ AJAX et les langages de script (et dynamiques) sont parmi nous!

Quelques exemples pour illustrer ce dernier point :
– Projet
Semplice
Java Basic (Visual Basic 7 pour
certains
)
– JavaScript (Rhino)
dans Mustang
(Java 6)
– Groovy (JSR
241
) et son framework dérivé Grails
– JRuby
on Rails

– BeanShell (JSR
274
)
Jython
(Python pour la JVM)
– Perl et son compilateur
de bytecode

Projet Phobos
: JavaScript coté client (AJAX + DHTML) et serveur
– PHP dans Weblogic et Caucho
Resin

Ce n’est pas nouveau (un autre langage comme Pnuts date de
1997), la question est plutôt “pourquoi maintenant”?

– L’arrivée des systèmes multi-coeurs fait
apparaître les limites de performance et de
scalabilité des interpréteurs classiques des ces
langages de script (pour ceux qui ne ciblaient pas initiallement la
JVM).

– Dans le même temps, la maturité de la JVM HotSpot qui se concentre depuis des
années sur les performances coté serveur et en
particulier sa capacité à optimiser un
environnement fortement multi-threadé en fonction du
matériel sous-jacent (y compris le dernier multi-coeur) en
font une cible d’exécution parfaite pour tous ces langages.

– Une fois le code source compilé en bytecode prêt
à être exécuté par la JVM,
toutes les optimisations de HotSpot peuvent entrer en action. C’est
ainsi que dans le cas de Basic sur la JVM, on constate un facteur
x13
entre la version s’exécutant sur la JVM et la
version native (.exe) pour le calcul d’une fractale.

– Les développements combinent de plus en plus
différents langages et différentes technologies
et la possibilité depuis un environnement (disons
JavaScript) d’appeler les bibliothèques d’un autre
(Java par exemple) et inversement est très
appréciable. Comme le disait Bill Roth (BEA) lors de sa
keynote à JavaOne, “en
moyenne, un développeur Java utilise
déjà plus de langages qu’un
développeur .Net” ;-)

Après une première
initiative
informelle de Tim
Bray
(Web Technology Director chez Sun), le travail
d’intégration des deux mondes (après tout la JVM
a quand même été initiallement
conçue pour le langage Java et son approche fortement
typée) s’appuie sur le JSR 223
(qui rend par exemple possible l’intégration de Rhino dans
Mustang) et le JSR
292
(invokedynamic, premier bytecode non destiné à Java le langage) qui vient de
démarrer avec Java 7 comme cible pour une
intégration plus flexible et encore plus performante.

L’équilibre atteint très tôt par la langage Java et conservé depuis est très
bon et l’arrivée de ces langages de script
n’enlève rien à ses qualités
et ne signifie pas non plus un baisse de son utilisation,
plutôt un élargissement de la
communauté Java. Comme dirait mes collègues
américains: “Java is bigger than the language (it’s the VM,
stupid)” et les armées de développeurs PHP et
Visual Basic sont donc les bienvenues.

Author: alexismp

Google Developer Relations in Paris.

5 thoughts on “Pourquoi a-t-on autant parlé de langages de script à JavaOne?”

  1. >les trois points importants de JavaOne

    Tu as oublie le Google Webtoolkit (GWT)

    (and now in english:)

    Doesn’t Sun like the GWT because it is based on Eclipse?

  2. Non, GWT est dans la catégorie AJAX, pas script ou langage dynamique puisque son objectif est justement de coder dans un langage fortement typé (Java) pour éviter JavaScript qui ne sera de toute façon pas exécuté sur une JVM.

    I don’t believe the GWT compiler (the core value of GWT) is based on Eclipse.

  3. Alors je vas essayer d’ecrire en francais. Le compilateur (?) de GTW est en effet basé sur Eclipse. Le jdt d’Eclipse est contenu dans le download (je cherche le mot francais pour “download”)

    Le GWT est une technology absolutement fantatique imho (dans mon opinion humble).

    Avec GWT on sera capable d’utiliser le DOM du browser en pur Java. On va faire ses propres “homepages” en pur Java c’est à dire remplacer le Javascript avec Java. On va faires des “Browser-games” ou “Ajax-games” en pur Java.

    Est-ce qu’il ya du support pour GWT dans Netbeans? Je suis etonne de ne pas trouver des informations sur le GWT sur/dans/en java.net.

    Ignorer le GWT pour des raisons “politiques” est une mauvaise idee (if you ask me). Je pense que Sun devrait embracer (?) le GWT. J’ai l’impression que Sun n’apprecie pas trop cette technologie.
    Au revoir
    Momo le petit

  4. Ignorer le GWT pour des raisons “politiques” est une mauvaise idee (if you ask me).

    -> Procès d’intention (if you ask me).

Comments are closed.