Retour sur la soirée Javascript au Paris JUG

Logo Paris JUGMardi 8 janvier 2013 a eu lieu la première soirée du Paris JUG de cette nouvelle année. C’était également pour moi une première.

Ingénieur depuis près de 9 ans sur Paris, dont plus de 3 ans chez Soat, et ayant développé dès mes débuts sur les technos Java, je n’avais encore jamais eu l’occasion – ou la motivation ? – d’assister à l’une de ces soirées orientées autour du monde Java.

Ces soirées, totalement gratuites et qui ont lieu une fois par mois à Paris, sont très courues par les développeurs Java passionnés. J’ai pu le constater par la rapidité à laquelle les 180 places – disponibles seulement la veille dès 7h00 – sont parties en moins de 3 heures !

Le thème de la soirée n’était pas en relation directe avec Java, mais plutôt avec son “petit frère” : Javascript. C’est d’ailleurs ce qui a attiré mon attention, ayant eu l’information par le biais d’un collègue de ma mission actuelle.

Accueil

Arrivé sur place vers 19h25, je remarque que l’audience est au rendez-vous : en effet, la salle est quasiment pleine. Après un rapide “check-in”, je suis accueilli par un responsable du JUG, qui me tend la dernière version du “Book of Vaadin”, gracieusement offert par l’éditeur. Juste le temps de trouver une petite place, d’écouter pendant quelques minutes la promotion pour l’événement Devoxx France à venir, que la première présentation commence.

Première présentation : AngularJS

Logo AngularJS

Sébastien Letélié, ingénieur chez Improve Santé, nous présente le dernier-né des frameworks Javascript open source poussé par des développeurs de chez Google : AngularJS. Après un bref état de l’art des architectures d’applications web, et un rappel sur les acquis de la programmation objet, Sébastien passe à une session de live coding.

Le développement se fait dans WebStorm, une version orientée Javascript de l’éditeur commercial IntelliJ IDEA de la société tchèque JetBrains. Partant d’une structure d’application web générée par Yeoman – équivalent de Maven pour le développement de ce type d’applications -, Sébastien nous montre au fur et à mesure comment développer les fonctionnalités de base permettant d’afficher dynamiquement les slides de sa propre présentation :

  • navigation (slides précédent, suivant, courant)
  • gestion de l’URL (accès direct aux slides)
  • templating de la page racine de l’application (création d’un nouvel élément HTML par “directive”)
  • création dynamique d’un nouveau slide (grâce au “two-way databinding”)
  • validation d’un formulaire
  • tests unitaires avec Testacular (exécution) et Jasmine (définition)

La session de code se finit bien vite, nous laissant un peu sur notre faim… mais libérant un bon quart d’heure pour les questions. Celles-ci tourneront essentiellement autour de détails techniques, même si certains tentent d’en savoir un peu plus sur les différences avec d’autres frameworks, tels Ember.js ou Backbone.js. Chaque personne posant une question se voit d’ailleurs offrir au choix un t-shirt AngularJS ou un t-shirt Google. Sympa le sponsor !

Pause

Nous sommes ensuite invités à rejoindre le sous-sol de l’ISEP pour un buffet offert par les sponsors. Celui-ci est plutôt frugal et s’apparente davantage à un apéritif, sans alcool cependant. J’en profite pour saluer quelques têtes connues, que ce soient des confrères Soatiens ou des anciens collèges de ma précédente mission (Oalia). Une quarantaine de minutes plus tard, il est temps de remonter pour assister à la deuxième présentation de la soirée.

Deuxième présentation : Backbone.js

Logo Backbone.js

Deux ingénieurs de chez OCTO Technology, Laurent Dutheil et Frédéric Merizen, nous présentent leur retour d’expérience sur Backbone.js en environnement Java. En raison de contraintes client (confidentialité), la présentation s’appuie sur une application assez simple, développée par l’un des présentateurs, à savoir un site de réservation de voyages en ligne.

Les points ayant poussé au choix du framework sont développés au fur et à mesure :

  • les vues/templates (utilisation de la librairie Underscore.js, mais d’autres sont possibles : Mustache, Handlebars…)
  • le support REST (communication avec le serveur en mode CRUD, éventuellement en RPC si le code métier est plus complexe)
  • la gestion des événements (synchronisation “vue-modèle” simple, mise en place possible d’un bus d’événements)
  • le routing (gestion de l’URL : redirection, historique)
  • la courbe d’apprentissage rapide (montée en compétence d’une équipe complète de développeurs Java plutôt habitués à “bricoler” le Javascript)
  • le support d’IE6
  • la testabilité (utilisation de Jasmine via un plugin Maven, accompagné de l’outil de mesure de couverture de code Saga)

La présentation se termine par un récapitulatif sur les livres utiles, les bons tutoriels du net, et un très rapide échange de questions-réponses.

Conclusion

Pour ma part, je ressors satisfait de cette expérience. Cela m’aura permis de constater que les soirées du Paris JUG ne sont pas réservées qu’à une élite barbue, et que les sujets ne sont pas forcément 100% Java/JDK/JVM. Mais l’importance du public présent me fait quand même préférer les soirées 3T Soat, où l’interactivité et la proximité avec les présentateurs sont davantage de mise.

Prochaine soirée

Prochaine soirée au Paris JUG, le mardi 12 février 2013, dans les locaux de l’ISEP (Paris 6ème).
Thème abordé : le traitement des annotations en Java, avec deux présentations sur APT  (Annotation Processing Tool), une “pour les nuls” et l’autre “pour les geeks”.
Inscriptions possibles à partir du jeudi 7 février 2013, sans doute dès 7h00. En attendant, plus d’infos sur le site web du Paris JUG ou en suivant son compte Twitter : @parisjug

Nombre de vue : 29

AJOUTER UN COMMENTAIRE