Le mardi 8 décembre, j'ai assisté à une soirée du ParisJUG. Même si c'est beaucoup moins bien qu'une soirée LyonJUG, j'ai beaucoup aimé la présentation d'Emmanuel Bernard sur le thème "Les standards : caca ou pas caca ?". Bon, d'accord, pour la comparaison entre les JUGs je ne suis pas du tout objectif, je serais peut-être même de mauvaise foi, mais ce n'est pas le sujet. Revenons à la présentation d'Emmanuel Bernard. Il a essayé de mettre dans la balance les avantages et inconvénients des standards, comme JavaEE, et ce qu'apporte l'open source en termes d'innovation. Je ne vais pas revenir sur l'ensemble de la présentation, Le Touilleur Express l'a très bien fait. Ce que j'en ai retenu, c'est que les standards sont fondamentaux dans les processus d'innovation car ils permettent de valider et de stabiliser les bonnes idées afin de permettre à d'autres d'aller un pas plus loin.
Étant personnellement un adepte de longue date de frameworks open source comme Spring ou Hibernate, et de serveurs d'applications open source comme Tomcat ou JBoss, j'aurais naturellement tendance à choisir cette voie. De plus, les différences de comportement constatés entre certaines implémentations de standards (JSF 1, JPA 1) m'ont un peu échaudé, en particulier pour des API de haut niveau. Ceci dit, certains clients m'ont obligé à pousser plus loin ma logique et m'ont fourni de nouveaux arguments en faveur des standards, arguments qu'Emmanuel n'a pas repris. Je m'empresse donc de vous en faire part ici.
Le contexte, c'est un client (plusieurs en l'occurrence) qui s'interrogent sur l'opportunité de choisir Java comme plate-forme pour leurs projets. Classiquement, leur choix doit se faire entre .NET et Java. Ce qui effraie mon client, c'est la diversité des solutions en Java et la réflexion qu'elle impose, alors qu'en .NET, il suffit d'installer Visual Studio pour démarrer. Je sais que les passionnés qui participent aux JUGs vont se désoler de la pauvreté de l'alternative et auront envie de présenter leurs solutions favorite, comme Grails, ou Wicket + Spring, ou quelqu'autre combinaison de frameworks efficaces, innovants et fun. Seulement, mon client, il en écoutera peut-être 5 d'entre vous, aura 5 visions différentes de ce qu'il faut faire en Java, prendra peur et choisira .NET… Je ne prétends pas, non plus que .NET se limite à ce que propose Microsoft ; il y a plein d'outils et de frameworks, souvent issus de Java, mais le courant imposé par Microsoft est tellement fort, que seuls les plus curieux vont chercher plus loin.
Grâce aux progrès de JavaEE, je peux prendre en compte les craintes du client, et lui conseiller de suivre simplement le standard JavaEE 6. Il téléchargera Netbeans avec Glassfish intégré et pourra commencer à travailler. Cette solution commence à ressembler à un courant principal pertinent pour débuter en Java. Reste qu'il y a un peu trop de spécifications intégrées à JavaEE 6 qui risquent de brouiller le message et que les profils vont semer un peu plus le trouble. Sauf si un effort de communication est fait pour imposer le message suivant : Pour commencer en Java, il faut prendre JavaEE, Web profile.
PS1 : Grails et Wicket sont de formidables frameworks Web que vous devez venir découvrir Mardi 15 décembre 2009. Pour les détails et l'inscription, c'est sur la page de la soirée Grails & Wicket.
PS2 : Si vous souhaitez en savoir plus sur JavaEE 6, venez voir et écouter Antonio Goncalves, lors de la soirée JavaEE6, en février.
Vive JavaEE 6 (ou pas ?)
le 02/01/2010 à 12:30











