Le Touilleur ExpressLe Touilleur ExpressLe Touilleur ExpressLe Touilleur Express
  • Accueil
  • A propos de l’auteur
  • A propos du Touilleur Express

Devoxx 2010 Keynote Mark Reinhold

    Home Devoxx Devoxx 2010 Keynote Mark Reinhold

    Devoxx 2010 Keynote Mark Reinhold

    Par Nicolas Martignole | Devoxx, Java | 5 commentaires | 17 novembre, 2010 | 0 | 1 600 affichages
         

    Mark Reinhold nous présente une petite mise à jour sur la plateforme Java. En 1996, Java 1.0 c’est les Applets, la première version pose les principes de Java qui sont toujours d’actualité 14 ans plus tard. Java 1.1 en 97, 1.2 etc… Java 1.4 finalement a été la première version la plus utilisée. Java 5 avec les Generics, puis Java 6 en 2006, soit il y a déjà 4 ans. Sun avait prévu de sortir quelque chose en 2010, mais le rachat a bousculé le planning. Oracle l’an dernier a réorganisé et a relancé la dynamique.
    Java 7 sortira en 2011, et ce qui suivra fin 2012.

    Productivité, performance,modularité, integration et universalité. Ce sont les 3 principes 5 principes qui vont guider la philosophie de Java 7. Aujourd’hui on parle plus de la plateforme Java que du langage. Finalement faire du Java c’est appartenir à une communauté et c’est vivre sur un continent. Chaque continent a ses pays, avec aujourd’hui Scala, Groovy, jRuby, jPython, mais bien d’autres.

    Concernant la productivité, Mark nous présente un exemple simple classique :

    Map<String ,String> m=new HashMap<String ,String>(); // java 6
    
    Map<String, List<String>%gt; m2= new HashMap<>();  // Java 7+
    

    Mark présente ensuite d’autres nouveautés dans le langage Java lui-même, et nous invite à suivre le projet Coins pour être à jour.

    Performance

    Concernant l’architecture, Mark explique que depuis 5 ans sur la loi de Moore nous sommes sur un plateau depuis 4 ans. En conséquence, de meilleures performances dans une application ne seront pas possibles uniquement avec du matériel. En 2005 par exemple Sun sort un proc avec 32 cores. En 2007, Niagara2 en 2007 64 cores… En 2009 c’est la sortie du processeur Niagara 3 avec 128 cores… Mais comment votre application va-t-elle gérer cela ?

    Finalement Java qui a offert la possibilité de tourner sur toutes les machines, vise maintenant la possibilité de tourner sur de multiples cores, sans que le développeur ait besoin d’être une brute en programmation concurrente. Comprenez bien ce message, la phrase qui va suivre est de moi, pas de Marc : « Write once, Run Everywhere, Scale anywhere »

    Java se rapproche des paradigmes de la programmation fonctionnelle, nous reparlons des expressions lamda. Mark montre l’utilisation des closures avec la notation #{ … }.

    
    double max = students.filter(#{ s -> s.gradYear == 2010 })
                                         .map( #{ s -> s.score })
                                         .max();
    interface Collection<T> {
       Collection<E> filter(Predicate<T> p) default Collections.<T>filter;
       <V> Collection<V> map(Extractor<T,V> e)
       default Collections.<T>map;
    
      <V> V max() default Collections.<V>max;
    
    

    Pour en savoir plus : http://openjdk.java.net/projects/lambda/

    Java dans le futur sera mis à jour moins souvent que jusqu’à maintenant. Oracle veut que Java soit un langage de premier plan mais qu’il conserve ses racines. C’est un langage en phase de stabilisation avec cependant de belles nouveautés pour les années. qui viennent.

    La grosse annonce de ce matin finalement c’est l’annonce de Reification sur les Generics. Java reprendra une version réunifiée sur les génériques afin de couvrir les lacunes, sur les paramètres des méthodes. Ce sujet a 4 ans, je l’ai vu sur le blog de Neal Gafter par exemple.

    Nous abordons maintenant une présentation sur les différents langages qui tournent sur la JVM. Mark pour Ruby cite par exemple jRuby. Cette implémentation tourne même plus vite que Ruby sur certains benchmarks.

    Concernant le classpath et le packaging, Mark reparle des modules, de l’alternative au classpath. Il cite maven et présente jmod, une application en ligne de commande qui mime Maven. Il permet de télécharger des JARs et des applications. Si j’ai bien compris, la notion de repository de Maven sera intégré dans votre JVM.

    
    nicolas@host $ jmod install org.openjdk.aggregator-1.0.jar
    nico...
    

    La nouvelle est qu’Oracle confirme une version de Java pour la mi 2011 avec beaucoup de nouveautés qui sont déjà prêtes. La nuit dernière, un ensemble de nouvelles JSR a été publié sur le site du JCP

    Une Keynote dans le ton de Sun, avec cependant du contenu plus précis que l’an dernier.

    On retiendra que Java 7 est donc bien prévu pour l’année prochaine.

    Articles similaires:

    Default ThumbnailDevoxx 2010 keynote Default ThumbnailDevoxx 2010 Keynote : the Web Default ThumbnailDevoxx 2010 dans quelques jours Default ThumbnailDevoxx 2010 : c’est dans 12 semaines
    devoxx
    • Avatar
      Dominique De Vito 17 novembre 2010 at 15 h 13 min

      « Finalement faire du Java c’est appartenir à une communauté et c’est vivre sur un continent. Chaque continent a ses pays, avec aujourd’hui Scala, Groovy, jRuby, jPython, mais bien d’autres. »

      C’est une bien belle métaphore !

      Par ailleurs, les closures présentées par Mark (module la notation #{ … }) m’ont fait penser à celles du langage Gosu : closures avec typage simplifié par inférence.

      Merci pour ces CR.

    • Avatar
      nicolas 17 novembre 2010 at 15 h 41 min

      à propos d’Oracle et Java :
      http://grep.codeconsult.ch/2010/11/16/why-the-asf-disagrees-with-oracle-straight-from-the-anonymous-cowards-mouth/

      qu’est ce que vous en pensez?

    • Avatar
      Romain 18 novembre 2010 at 9 h 13 min

      « Productivité, performance, modularité, integration et universalité. Ce sont les 3 principes qui vont guider la philosophie de Java 7. »

      Euh ça fait pas 5 principes ? ;o)

      Autre point :

      « Java dans le futur sera mis à jour moins souvent que jusqu’à maintenant. Oracle veut que Java soit un langage de premier plan. »

      N’est-ce pas l’inverse, à savoir que « Java sera mis à jour PLUS souvent » ? Sinon je ne vois pas trop comment Oracle pourrait le mettre au premier plan… Et puis considérant le temps pris pour sortir Java7 après Java6 (environ 5 ans) et celui « normalement prévu » entre la version 7 et 8 (1 an et demi), ça me conforte dans l’idée que tu as dû te tromper dans ta phrase (mais je ne t’en veux pas, ton planning a l’air très chargé ces jours-ci ;o) ).

      Merci pour tous les reportages et compte-rendu qui nous permettent de suivre Devoxx à distance !

    • Avatar
      Nicolas Martignole 19 novembre 2010 at 0 h 48 min

      @Romain : article corrigé, merci de ton retour. J’ai précisé et changé l’article original.

    Recent Posts

    • GitHub Actions : le tueur de Jenkins ?

      Avouez-le : ce titre de blog est super racoleur. J’avais aussi pensé

      15 février, 2021
    • Comment recréer du lien social dans l’Entreprise avec des outils numériques en 2021

      Nous sommes en février 2021 pendant le 3ème confinement lié à la

      10 février, 2021
    • FizzBuzz en Java et Scala (surtout Scala)

      L’exercice FizzBuzz est un petit exercice très simple, à tester par exemple

      9 février, 2021

    Recent Tweets

    •  @cblavier  Tu as testé html ? https://t.co/O8gTvI45Bt

      3 hours ago
    • J’aime beaucoup le framework CSS léger Tailwind. Suis en train de recoder la partie publique du CFP de devoxx pour… https://t.co/wE8mWqVROs

      4 hours ago
    •  @cblavier   @glaforge   @doctolib  lol 😂

      5 hours ago
    •  @glaforge   @doctolib  😂 le B.A ba pour une ordonnance reussie. Imagine si on faisait cela pour les tickets Jira !

      7 hours ago
    •  @ponceto91  J ai commencé sur cette machine grâce à mon père qui avait ramené cela un jour. Malheureusement il est d… https://t.co/9eIjvKuw2J

      20 hours ago

    Mots clés

    agile (18) ajax (11) Apple (11) architecture (6) barcamp (5) BarCampJavaParis (5) ddd (5) devoxx (33) esb (6) exo (6) flex (9) geek (5) google (11) grails (5) groovy (10) humeur (12) humour (7) independant (6) iphone (12) Java (77) javascript (7) jazoon (28) jboss (22) jboss seam (12) jsf (9) jug (16) Linux (11) mac (6) mule (5) parisjug (7) paris jug (22) pjug (6) play (8) playframework (6) portlet (5) recrutement (6) ria (8) Scala (21) scrum (44) spring (23) Startup (11) usi (21) usi2010 (9) web (16) xebia (7)

    Le Touilleur Express

    Contactez-moi : nicolas@touilleur-express.fr

    Suivez-moi sur Twitter : @nmartignole

    Copyright© 2008 - 2020 Nicolas Martignole | Tous droits réservés
    • A propos de l’auteur
    • A propos du Touilleur Express
    Le Touilleur Express