Devoxx france : 3 petits jours et puis s’en vont !

  • Sharebar

Voila Devoxx c’est fini !! Ces 3 jours étaient passionnants! J’ai découvert énormément de choses !! Peut être même trop pour mon petit cerveau !

Ne pouvant pas faire un retour sur tout, je vous propose  un petit top 5 !

Let’s Go !!

5- Expression lambda dans Java 8 …. ou « Comment ajouter des  fonctionnalités à des classes existantes sans tout casser:) »

Une première béta de la java 8 étant sortie récemment, Guillaume Tardif nous a proposé un petit tour du propriétaire.

On démarre avec une petite introduction sur l’implémentation de la programmation fonctionnelle dans la JDK.

On découvre entre autre de nouvelles méthodes sur les collections qu’on utilise avec des prédicats. Du coup, un code du style :

Agent[] agents =…..

foreach (Agent a in agents)

{

System.out.println(“Nom:” + a.Nom);

}

Pourra s’écrire

Agent[] agents =…..

agents.ForEach (a =>

{

System.out.println(“Nom:” + a.Nom);

}) ;

Deuxième exemple, la méthode filter(Predicate) qui permet ni plus ni moins de faire des “sorts” directement sur une collection.

Predicate<String> longName= s->a.Nom.length()>4;

Block<String> display = s->System.out.println(a.Prenom);

agents.filter(longName).forEach(display);

Ce code permet d’afficher les prénoms des agents qui ont un nom avec plus de 4 lettres.

Une autre nouveauté est la possibilité d’ajouter à une interface des méthodes non abstraites, avec une implémentation par défaut.

Cette nouveauté a été rajoutée entre autre pour l’utilisation des lambdas.

En effet cette solution  a été choisie afin de permettre de faire évoluer les librairies de collections, sans pour autant casser l’API.  Rendez vous en 2013 !

4- En attendant  un petit peu de Guava… Ou lorsque Google contribue à nos 5 fruits et légumes journaliers .

Guava est un ensemble de librairie développée par Google. Nous avons eu l’opportunité d’avoir l’équipe presque complet (il manquait une personne).

L’objectif de Guava est de transformer notre java en une sorte de java ++.

On se retrouve  avec de « superbes collection » qu’on peut filtrer en utilisant des predicates.  (Ca ne vous rappelle rien ?? ) Une vraie boite à outils !

Chaque nouvelle release est considérée comme  majeure, et apporte son lot de petites surprises !

Attention! L’une des particularités de Guava c’est qu’il mélange API « Frozen » et API Beta et ça bouge rapidement :  Une release tous les 3 mois.

3-Tester votre application  web avec Selenium 2, Selenium Grid et TestNG

En général les phases de test sont de vraies prises de tête… Et c’est encore pire lorsque c’est une application web.

Il est important de vérifier que l’application a le même comportement sur tous les navigateurs. Et idéalement, avant toutes livraisons,  il faudrait faire des tests de non régression.

Donc, soit on installe 10 personnes dans un bureau  avec les principaux navigateurs du marché,  un cahier  de scénario, un fichier Excel et beaucoup de café…

Soit on essaie d’automatiser le tout !

Pour ce faire Mathilde Lemee nous a présenté Selenium 2

Les tests Selenium sont  écris en java et se basent  entre autre sur les ID des différents éléments de la page.

On  définit les scénarios ainsi que le navigateur à utiliser, on clique …et boum!Le navigateur s’ouvre automatiquement et c’est parti pour un tour .

Ca marche très bien mais c’est un peu lent. Cela risque d’être problématique pour de grosses applications. L’idéal serait de pouvoir paralléliser les tests ..

Ha ben ça c’est une bonne idée ! C’est exactement ce que permet TestNG !

En plus  nous pouvons avoir une gestion de groupe, gestion de dépendance entre les tests.

La possibilité d’en rendre certains inactifs très simplement et en bonus il  comporte une gestion d’accès concurrente et un passage de paramètres dynamiques…  (oui moi aussi j’ai dit woaw lol)

Allons plus loin ! Et si on arrivait à avoir des machines dédiées pour faire les tests ?

Des tests en mode distribué ? C’est ce que propose  Selenium Grid !

La possibilité d’avoir des machines dédiées qui s’occupent de faire les tests sur des navigateurs que vous définissez au préalable.

Cela se décompose en un hub et des nodes. Cerise sur le gâteau c’est que le tout peut être dans le cloud.

La démonstration a été très impressionnante . Cela m’a presque fait aimer les tests ! J’ai dit presque hein ?!

2-Scala bien  … et toi ?

Scala n’est pas le nouveau langage à la mode. Il a quand même plus de 10 ans.

Souvent décrié, décris comme trop compliqué ou complètement illisible par certains, il fait cependant le bonheur de certains « spécimens » comme Sadek Drobi et Guillaume Bort , qui  avaient la lourde tache de démystifier les choses .

Scala c’est un peu la « canada dry » du java. Ca ressemble a du java , on retrouve des mots clé de java … Mais ça n’a rien à voir avec le java !

L’une des forces de Scala c’est que c’est un langage orienté objet  supportant  la programmation fonctionnelle. (oui encore du fonctionnel)

Comme nous l’a conseillé les intervenants il ne faut pas essayer de faire un lien entre les 2 langages, mais partir de zéro.

Il y a 2 problématiques :

  • Les concepts ( Orienté expression , pattern Matching etc…)
  • La syntaxe

Une fois ces éléments assimilés , je dois avouer que ce langage à son charme.

Dans tous les cas Scala est un langage qui ne reste pas indifférent .

1-Play 2.0 ou WOA en action !!

Sadek Drobi et Guillaume Bort  (oui encore eux) nous ont présenté  Play 2.0 qui est sorti il y a peine 3 mois.

C’ est un framework  opensource qui permet de développer des application web .

L’idée générale est de permettre d’avoir une grande productivité et de permettre un développement sans cérémonie.

Elle est l’application concrète de la mouvance Web Oriented Architecture qui préconise un retour à la source :  web = http + html + uri

Le développement se fait en Java ou en Scala, et permet en autre une prise en compte des modifications à chaud.

C’est à dire que lorsque l’on modifie le code il suffit de recharger la page pour voir les modifications.

Je ne vais pas développer ce sujet plus longtemps car il sera le sujet de mon prochain poste ;)

Conclusion

Devoxx a été un vrai produit dopant !  Chaque soir je repartais très fatigué mais intellectuellement très motivé !

Toutes ces conférences m’ont permis de découvrir les tendances et d’imaginer l’informatique de demain : L’avènement de la programmation fonctionnelle, l’émergence du cloud computing. et une nouvelle façon de concevoir les applications web.

Un retour aux sources en quelque sorte… comme quoi la vie est vraiment un éternel recommencement :)

PS :vous pouvez trouver tous les slides de Devoxx sur le normandyJUG !!

This entry was posted in Conferences, Java. Bookmark the permalink.

One Response to Devoxx france : 3 petits jours et puis s’en vont !

  1. Pingback: Devoxx France 2012 : On en parle sur le web | NormandyJUG

Leave a Reply