Archive pour le tag 'evenement'

NormandyJUG - et de cinq !

20 janvier 2010

Cette fois ci je m’y suis pris assez tôt pour vous faire un compte-rendu de la réunion du mois de janvier du NormandyJUG.

Le changement d’année s’est accompagné d’un changement de décors puisque cette réunion a eu lieu à l’UFR Sciences et Techniques du Madrillet. Cette soirée avait de quoi plaire avec le thème Java EE 6 et Glassfish. Initialement, la réunion devait s’organiser ainsi :

Au final, il s’est avéré que les deux présentations ont fusionnées et nos deux intervenants ont alterné les présentations des nouveautés de Java EE 6 au travers d’une quinzaine de démonstrations qui tournaient sur Glassfish.
Pour ceux qui ont raté l’événement, Java EE 6 est sorti le 10 décembre 2009 et regroupe actuellement 28 spécifications. Cette nouvelle version apporte sont lot de nouveautés qui raviront de nombreux développeurs parmi les suivantes :

  • Le prunning indique qu’une spécification peut disparaitre dans une prochaine version de Java EE.
  • Les profiles définissent des sous-ensembles ou sur-ensembles de JEE (un peu comme le fait JME). Aujourd’hui, il existe le profile Web Profile.
  • Les EJB Lite.
  • La normalisation du nommage JNDI.
  • Tout est Managed Bean. Avec Managed Bean 1.0 n’importe quel objet est une sorte de POJO EE qui autorise des concepts fondamentaux : cycle de vie, injection et intercepteurs.
  • La mise à jour majeure de JPA 2.0 apporte des améliorations essentielles :
    • Mapping de liste de type simple
    • Embeddable récursif
    • Amélioration de la gestion des Maps
    • Enrichissement du JPQL
    • Normalisation du persistence.xml
    • Lock pessimiste
    • Une criteria API (enfin !)
    • Cache
    • Etc…
  • Servlet 3.0 n’apporte pas grand chose de nouveau :
    • Annotations
    • Extensions via des fragments ou une API
    • API de configuration
    • FileUpload
    • Support de la sécurité
  • Quelques nouveautés intéressantes dans EJB 3.1 :
    • Intercepteurs configurable comme ça se fait en AOP
    • Interface optionnelle pour les EJBs locaux
    • EJBs asynchrones
    • Paquetage dans un WAR possible pour EJB Lite
    • Un nouveau Timer Service qui reprend les bonnes idées de cron
    • EJB Singleton
    • Une container API pour disposer d’un conteneur embarqué
  • JSF 2.0 :
    • Utilisation des facelets
    • Pas de dépendance avec Servlet 3.0
    • Les fichiers de configurations deviennent optionnels
    • Composants et composants composites
    • Amélioration des traces d’erreur
    • Standardisation de l’Ajax via le JavaScript et les tags
    • Bean Validation
    • Template
  • Bean Validation 1.0 permet d’écrire des règles métier une seule fois et de les utilise partout (couche JPA et JSF aujourd’hui). Des règles simples sont pré-définies mais il est possible de créer ses propres règles personnalisées.
  • REST n’a pas été oublié avec JAX-RS 1.1. Tout se fait simplement avec des annotations (comme les web services) : support des mimes types, paramètres, EJB, …
  • Le CDI/DI permet de réaliser un couplage lâche avec un typage fort. Cette spécification définie également la notion de porté en introduisant une nouvelle : la conversation. Cette dernière permet de résoudre la problématique de scénario concurrent sur une interface web (ie pour une utilisation multi-fenêtre ou multi-onglet).

Même si je ne suis pas un très grand fan des annotations, je dois avouer que cette nouvelle version de Java EE est très séduisante et donne envie de passer le plus rapidement possible sur un serveur d’application implémentant Java EE 6.

J’ai essayé d’être le plus concis possible mais il y a tellement de chose qui ont été présentées… J’espère vous avoir donné également envie d’utiliser Java EE 6. Je tiens enfin à saluer Antonio et Alexis pour leur bonne humeur et la qualité de leur prestation !

NormandyJUG - ça fait quatre ?

15 janvier 2010

Je vais arrêter de m’excuser pour le retard… Je souhaite juste vous faire un retour rapide sur la réunion du mois de décembre du NormandyJUG.

Cette réunion a eu lieu comme lors de la précédente réunion à l’eXia/CESI. C’était une soirée assez variée puisque trois thèmes bien différents ont été abordés :

La présentation d’Android était faite pour les personnes qui ne connaissaient pas la plate-forme Android. Un état de l’art des différents smartphones a été fait. Puis l’environnement de développement a été décrit dans ses grandes lignes.

La seconde partie avait pour titre : “GWT avancé“. Malgré qu’il était mal en point, Youen a tenu à présenter la nouvelle version de GWT. Je vous passe le nouveau Development mode et l’UiBinder pour vous expliquer un peu la raison d’être de GWT 2.0 : l’optimisation des temps de chargement. En effet, une application GWT devient très vite très grosse. Or, toute l’application est chargée dès la première page. Ce qui peut alors prendre un certain temps. La communauté a demandé de trouver une solution à ce problème. Et Google a proposé une solution : le code splitting. Afin de pouvoir découper le code d’une application en plusieurs morceaux, il faut procéder à un découplage du code. C’est pourquoi l’Event Bus a été ajouté est recommandé dans GWT 2. Alors que nous avons l’habitude d’utiliser le modèle de conception MVC, l’Event Bus permet de mettre en place le modèle de conception : le MPV. Ce modèle donne les bonnes pratiques pour réaliser un couplage faible et donc de réduire les dépendances entre les composants.

Enfin, la dernière partie était une très bonne présentation de ce qu’est et permet de faire JSF. Je peux même dire que cette présentation de JSF 2.0 m’a presque réconcilié avec JSF. Je m’étais arrêté à la version 1.2 assez rapidement par déception. Je pense tout de même que ce framework reste à destination d’applications de type back-office.

Cette nouvelle réunion du NormandyJUG est passée à deux doigts de se transformer en réunion Google… Heureusement que JSF était là pour rattraper le coup ! ;)

NormandyJUG - la troisième…

17 décembre 2009

C’est avec un énorme retard que je voulais vous présenter la troisième réunion du NormandyJUG qui a eu lieu au mois d’octobre. :-/

Cette réunion a eu lieu dans un nouvel endroit. En effet, l’eXia/CESI nous a accueilli au sein de leurs locaux. Cette soirée proposait un unique programme : les outils de construction. Trois outils étaient présentés lors de cette session :

  • Maven par Arnaud Héritier
  • Ivy par Xavier Hanin (initialement mais il s’est excusé)
  • Easy Ant par Jean Louis Boudart
  • Gradle par Grégory Boissinot

Que faut-il retenir de ce comparatif ?

“Le produit du code source (ici il faut entendre les binaires) est tout aussi important que le code source lui-même !”

Maven reste sûrement l’outil le plus mature et le plus complet. Le projet a su tirer partie des erreurs faites lors de sa première version. De plus, la communauté des utilisateurs étant plutôt conséquente, le retour d’expérience est non négligeable.

Easy Ant propose une solution entre Ant et Maven. Il permet de faire à peu près la même chose que Maven mais avec la souplesse de Ant. Effectivement, Maven imposse un cadre qui peut parfois être frustrant. Cependant, c’est aussi sa force. Je pense que Easy Ant est plus à destination des tous petits projets car plus rapide et moins lourd à mettre en place.

Quant à Gradle, il est a réserver pour le moment pour les expérimentations. En effet, il n’est pas encore mature. Il a pour objectif de réunir les bonnes pratiques de construction à la Maven et la gestion de dépendance à la Ivy. L’un de ses avantages est de pouvoir être utilisé en tant qu’application autonome (contrairement à Maven).

Tout ça pour dire que c’est à vous de faire votre marché parmis ces outils. Je pense que Maven est un cran au dessus à partir du moment où l’on est près à accepter ses contraintes et l’investissement pour sa mise en place. ;-)

NormandyJUG - la seconde réunion !

22 septembre 2009

On remet ça ? Oui, oui ! La première réunion avait eu lieu avant la période estivale. Les congés sont terminés. Tout le monde a repris le boulot et les étudiants sont de retour ! C’est donc le moment de relancer les réunions du NormandyJUG.

Ce deuxième rendez-vous a eu lieu hier au même endroit que la dernière fois.

Au menu, nous avons eu le droit à :

  • Présentation en anglais de TeamCity, un outil d’intégration continue, par Pavel Sher et Yegor Yarko, deux membres tchèques de l’équipe de JetBrains, qui ont fait un petit détour par Rouen avant de rentrer chez eux
  • Initiation à l’AOP :

La première partie était intéressante quand on n’a jamais vue l’intégration continue en action. L’anglais du speaker était fluide et très compréhensible. Il y a peut-être eu moins de questions que d’habitude. L’assistance n’étant peut-être pas forcément à l’aise pour s’exprimer dans la langue de Shakespeare.

Après la pause, nous avons pu constater que peu de personnes dans l’assistance connaissaient ou pratiquaient l’AOP. Le sujet semblait intéresser. Nous sommes passé très vite sur les démos (à cause au temps). J’espère que l’on n’a pas perdu trop de monde à cet instant. De plus, il reste encore beaucoup de choses à raconter sur le sujet. Ça m’a également donné des idées sur la façon de présenter cette méthodologie par l’exemple

Pour information, Nicolas Giard en a profité pour faire un live report de cette réunion entre deux joutes Wicket. C’est à surveiller par les personnes qui ne pourront pas se rendre à la prochaine réunion du NormandyJUG.

Il ne reste plus qu’à attendre les présentations, démos, vidéos et photos. Et vivement la prochaine réunion !

NormandyJUG - la première !

17 juin 2009

Il n’y a pas très longtemps, je vous ai annoncé la création du NormandyJUG. Je n’étais pas le seul à l’annoncer. Ça a été dit ici ou bien mais je ne pourrais pas tous les citer… Et bien, ce soir s’est tenue la première réunion.

Je pense que c’est une réussite tant sur la qualité des présentations que sur le nombre de participants ou que sur l’organisation générale. Bon, il y a eu un petit dérapage sur l’horaire de fin mais qui s’en plaindra ? ;-)

Pour rappel, en attendant les présentations, photos et vidéos :

  • Présentation du JUG par Yann Petit et Nicolas Giard
  • Battle GWT vs Wicket par Youen Chéné et Nicolas Giard
  • Intégration continue par Dimitri Baeli et Laurent Deséchalliers

Je reviendrai plus tard sur les présentations mais je ne peux que saluer la bonne ambiance rencontrée. Et je vous invite à rejoindre au plus tôt le NormandyJUG !

NormandyJUG - un groupe d’utilisateurs Java sur Rouen

3 juin 2009

La Normandie a enfin son groupe d’utilisateur Java ! L’association NormandyJUG vise à regrouper les personnes ayant des affinités avec le langage Java afin d’échanger des avis, expériences, etc…

La première réunion aura lieu le mardi 16 juin à 19H au Pôle Normand (PAT LA Vatine). Au menu, vous aurez droit à un comparatif GWT vs Wicket, puis à une présentation sur le thème de l’intégration continue.

N’hésitez pas à vous inscrire à la première réunion du NormandyJUG !