<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog de christopheJ &#187; Java</title>
	<atom:link href="https://blog.developpez.com/christophej/pcategory/java/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/christophej</link>
	<description></description>
	<lastBuildDate>Sun, 12 Jul 2009 13:05:47 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Pushing Java</title>
		<link>https://blog.developpez.com/christophej/p7742/java/pushing_java</link>
		<comments>https://blog.developpez.com/christophej/p7742/java/pushing_java#comments</comments>
		<pubDate>Sun, 14 Jun 2009 21:43:48 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Java doit beaucoup de son succès aux communautés qui se sont créées autour. Ces groupes de bénévoles (comme l&#8217;équipe de ce site, celles des JUGs ou des projets open source) donnent beaucoup de leur temps. Lors de l&#8217;édition de JavaOne cette année, une partie des leaders de ces communautés se sont réunis autours de la mascotte de Java, Duke, et de celle des JUGs, Juggy, pour réaliser une petite vidéo. Je vous recommande cette petite [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Java doit beaucoup de son succès aux communautés qui se sont créées autour. Ces groupes de bénévoles (comme l&rsquo;équipe de ce site, celles des JUGs ou des projets open source) donnent beaucoup de leur temps.<br />
Lors de l&rsquo;édition de JavaOne cette année, une partie des leaders de ces communautés se sont réunis autours de la mascotte de Java, Duke, et de celle des JUGs, Juggy, pour réaliser une <a href="http://www.youtube.com/watch?v=urbQApO2gEY">petite vidéo</a>.</p>
<p>Je vous recommande <a href="http://www.youtube.com/watch?v=urbQApO2gEY">cette petite vidéo</a> (1 min 30), pleine d&rsquo;humour, pour voir comment les communautés poussent Java.<br />
N&rsquo;y attendez pas des concepts ou des conseils, mais juste des blagues de geek.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Une injection pour tous</title>
		<link>https://blog.developpez.com/christophej/p7573/java/un_injection_pour_tous</link>
		<comments>https://blog.developpez.com/christophej/p7573/java/un_injection_pour_tous#comments</comments>
		<pubDate>Wed, 06 May 2009 12:48:23 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Non il ne s&#8217;agit pas d&#8217;une injection vaccin contre le grippe A&#8230; Il s&#8217;agit d&#8217;une unification des frameworks d&#8217;injection. Bob Lee (Google, créateur de Guice) vient d&#8217;annoncer une nouvelle spécification sur l&#8217;injection de dépendance, en collaboration avec Spring. L&#8217;objectif est de standardiser les annotations pour rendre les objets injectables portables entre les différents frameworks. La JSR n&#8217;est pas encore officiellement soumise au JCP, par contre il montre une forte volonté de faire les choses au [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Non il ne s&rsquo;agit pas d&rsquo;une injection vaccin contre le grippe A&#8230; Il s&rsquo;agit d&rsquo;une unification des frameworks d&rsquo;injection.<br />
Bob Lee (Google, créateur de Guice) vient d&rsquo;<a href="http://crazybob.org/2009/05/announcing-javaxinjectinject.html">annoncer</a> une nouvelle spécification sur l&rsquo;injection de dépendance, en collaboration avec Spring. L&rsquo;objectif est de standardiser les annotations pour rendre les objets injectables portables entre les différents frameworks.<br />
La JSR n&rsquo;est pas encore officiellement soumise au JCP, par contre il montre une forte volonté de faire les choses au grand jour : la mailing list est lisible pour le public et la spécification est hébergé chez Google Code.</p>
<p>C&rsquo;est intéressant de voir ce mouvement vers l&rsquo;interopérabilité des frameworks. La fin d&rsquo;une partie des débats sur les annotations de Guice qui vous rendent dépendant de Guice&#8230;.</p>
<p>Par contre il reste à voir comment cette spécification va pouvoir s&rsquo;accorder avec celle de la JSR 299, anciennement WebBeans qui est maintenant nommée : Java Context and Dependency Injection. Va-t-on revoir la même guerre que pour les spécifications sur la modularité? Bob répond à la question dans les commentaires sur son blog, en précisant qu&rsquo;elles sont compatibles, il faut &laquo;&nbsp;juste&nbsp;&raquo; que le groupe d&rsquo;expert de la JSR 299 adopte ces nouvelles annotations. La JSR 299 est une spécification Java EE qui préciserait la configuration alors que cette nouvelle spécification se veut Java SE et laisse libre l&rsquo;implémentation de la configuration.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Les Cast Codeurs</title>
		<link>https://blog.developpez.com/christophej/p7492/java/les_cast_codeurs</link>
		<comments>https://blog.developpez.com/christophej/p7492/java/les_cast_codeurs#comments</comments>
		<pubDate>Thu, 16 Apr 2009 13:50:11 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Peut-être connaissez vous le Java Posse, un podcast hebdomadaire sur Java et tout ce qui tourne autour. Peut-être regrettez vous qu&#8217;il soit en Anglais? Alors réjouissez vous, voici non pas une traduction de ce podcast mais une version en Français fait par des Français : les CastCodeurs. Dans cette équipe, on retrouve : Emmanuel Bernard de l&#8217;équipe Hibernate chez JBoss et spec leader pour la JSR 303 (Bean Validation) Antonio Goncalves, Freelance, Leader du Paris [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Peut-être connaissez vous le <a href="http://javaposse.com/">Java Posse</a>, un podcast hebdomadaire sur Java et tout ce qui tourne autour. Peut-être regrettez vous qu&rsquo;il soit en Anglais?<br />
Alors réjouissez vous, voici non pas une traduction de ce podcast mais une version en Français fait par des Français : les <a href="http://lescastcodeurs.com/">CastCodeurs</a>.<br />
Dans cette équipe, on retrouve : </p>
<ul>
<li>Emmanuel Bernard de l&rsquo;équipe Hibernate chez JBoss et spec leader pour la JSR 303 (Bean Validation)</li>
<li>Antonio Goncalves, Freelance, Leader du <a href="http://parisjug.org">Paris JUG</a>, <a href="http://java.developpez.com/livres/?page=Francais#L2212120389">auteur à succès</a> et membre des JSR 313 (Java EE 6), 318 (EJB 3.1) et 317 (JPA 2.0).</li>
<li>Guillaume Laforge de chez SpringSource et Groovy</li>
<li>Vincent Massol de chez XWiki et Maven</li>
</ul>
<p>Il reste quelques coins à arrondir, mais le premier épisode est très prometteur, vivement la suite.</p>
<p>En attendant cette suite, vous pouvez leur envoyer vos commentaires/encouragements à commentaire@lescastcodeurs.com</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La multiplication des JUG</title>
		<link>https://blog.developpez.com/christophej/p7447/java/la_multiplication_des_jug</link>
		<comments>https://blog.developpez.com/christophej/p7447/java/la_multiplication_des_jug#comments</comments>
		<pubDate>Sun, 05 Apr 2009 20:23:40 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Divers]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Tours JUG]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Les JUG se multiplient actuellement et vous allez bientôt pouvoir en trouver deux près de chez vous. Vous n&#8217;aurez donc plus d&#8217;excuses pour ne pas aller rencontrer d&#8217;autres développeurs dans ces réunions. Il y a maintenant 14 JUG actifs, sur le point de faire leur première réunion ou en constitution d&#8217;équipe. Faute d&#8217;avoir tenu la liste au fur et à mesure des créations, je ne vais pas en parler dans l&#8217;ordre historique, mais commencer par [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Les JUG se multiplient actuellement et vous allez bientôt pouvoir en trouver deux près de chez vous. Vous n&rsquo;aurez donc plus d&rsquo;excuses pour ne pas aller rencontrer d&rsquo;autres développeurs dans ces réunions.<br />
Il y a maintenant 14 JUG actifs, sur le point de faire leur première réunion ou en constitution d&rsquo;équipe.</p>
<p>Faute d&rsquo;avoir tenu la liste au fur et à mesure des créations, je ne vais pas en parler dans l&rsquo;ordre historique, mais commencer par les petits nouveaux.</p>
<p>Le dernier né en date est le <a href="http://www.poitoucharentesjug.org/">Poitou-Charentes JUG</a>. La première réunion, sur Maven, sera vendredi 10 avril du coté du <strong>Futuroscope</strong>. Cette session sera animée par Nicolas de Loof, commiter Maven et Leader du Breizh JUG. Pour faire une réussite de l&rsquo;inauguration de ce JUG, n&rsquo;hésitez pas à en faire de la publicité autour de vous.<br />
<span id="more-5"></span><br />
Un autre JUG récent est le <a href="http://www.normandyjug.org/">NormandyJUG</a>. Ce JUG n&rsquo;a pas encore de réunion programmée, ils sont à la recherche de sponsors, salle de réunion et membres donc n&rsquo;hésitez pas à les contacter si vous êtes du coté du <strong>Rouen</strong> (ou de plus loin).</p>
<p>Le troisième de ces nouveaux JUGs est le <a href="http://chtijug.org/">Chti JUG</a>. Là aussi le projet se mets en place et est à la recherche de toutes les bonnes volontés (sponsors, speakers, membres&#8230;.) du <strong>Nord-Pas-de-Calais</strong>.</p>
<p>Le quatrième est un projet à <strong>Marseille</strong>, le <a href="http://marsjug.org/">MarsJUG</a> dont le domaine est vide pour l&rsquo;instant et l&rsquo;équipe en formation. </p>
<p>Le cinquième des JUG qui n&rsquo;a pas encore fait son baptême de la première réunion est le <a href="http://www.jugtoulouse.org/"><strong>Toulouse</strong> JUG</a>. Mes informateurs m&rsquo;ont parlé d&rsquo;une inauguration en mai.</p>
<p>Enfin on trouve le <a href="http://www.lyonjug.org/bin/view/Main/20090421"><strong>Lyon</strong> JUG</a> qui tiendra sa soirée d&rsquo;inauguration le mardi 21 avril avec au programme GWT, Maven et une tombola pour une entrée à Jazoon.</p>
<p>Après les petits nouveaux, je vais quand même faire un rappel sur les autres JUGs et leurs présentations à venir. Un petit coup de projecteur pour attirer du monde car pour un responsable de JUG, la question de la réussite d&rsquo;une session se repose à chaque fois.</p>
<p>Le premier a frappé ce mois-ci est le <a href="http://www.breizhjug.org/">BreizhJUG</a> pour une soirée Spring avec Julien Dubois lundi 6 avril à <strong>Rennes</strong>.</p>
<p>Mercredi 8 avril, ce sera l&rsquo;anniversaire du <a href="http://www.toursjug.org/xwiki/bin/view/Meetings/20090408"><strong>Tours</strong> JUG</a> avec une soirée de Quickies (petites présentation de 15 à 20 minutes) avec au programme un portail d&rsquo;entreprise, un plugin Maven pour les EJB, une horloge mondiale et une Wiimote. </p>
<p>Jeudi 9 avril, le <a href="http://www.bordeauxjug.org/20090409_SOA"><strong>Bordeaux</strong> JUG</a> dressera le bilan de SOA.</p>
<p>Le lendemain, vendredi 10 avril, le <a href="http://www.rivierajug.org/xwiki/bin/view/Main/20090410-soa">Riviera JUG</a>, à <strong>Nice</strong>, vous expliquera ce qu&rsquo;est SOA avec ses ESB et ses BPM.</p>
<p>Le mardi 14 avril, le <a href="http://www.parisjug.org/xwiki/bin/view/Meeting/20090414"><strong>Paris</strong> JUG</a> vous invite à la découverte de Scrum.</p>
<p>Le mardi 21 avril, le <a href="http://www.lyonjug.org/bin/view/Main/20090421"><strong>Lyon</strong> JUG</a> vous accueillera pour son inauguration avec GWT et Maven.</p>
<p>Jeudi 23 avril, le <a href="http://www.nantesjug.org/"><strong>Nantes</strong> JUG</a> vous présentera Jazz, la nouvele plateforme de développement collaboratif.</p>
<p>Enfin parmi les JUGs actif mais sans réunion annoncée pour l&rsquo;instant, il reste le <a href="http://lorrainejug.blogspot.com/">Lorraine JUG</a> proche de <strong>Nancy</strong> et le <a href="https://jug-g.dev.java.net/">JUG-G</a> à <strong>Grenoble</strong>. </p>
<p>Vous avez maintenant un total de 14 JUGs couvrant toutes les régions de France (Lille, Paris, Rouen, Rennes, Nancy, Nantes, Tours, Poitiers, Bordeaux, Lyon, Grenoble, Toulouse, Nice, Marseille). Vous n&rsquo;avez donc plus d&rsquo;excuses pour ne pas aller dans les soirée des JUGs puisqu&rsquo;il y en a un près de chez vous. Ce sont autant d&rsquo;occasions d&rsquo;apprendre des choses, rencontrer des gens passionnés et pourquoi pas de démarrer une grande carrière de speaker grâce à votre première présentation dans un de ces JUGs.</p>
<p>Ces JUGs sont aussi tous plus où moins à la recherche de speakers, sponsors ou simplement de gens pour aider à l&rsquo;installation des salles ou la diffusion de l&rsquo;information donc n&rsquo;hésitez pas à vous renseigner au JUG près de chez vous.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mes IDEs sont les meilleurs!</title>
		<link>https://blog.developpez.com/christophej/p5728/java/mes_ides_sont_les_meilleurs</link>
		<comments>https://blog.developpez.com/christophej/p5728/java/mes_ides_sont_les_meilleurs#comments</comments>
		<pubDate>Sat, 28 Jun 2008 21:30:11 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[J&#8217;aurais pu nommer ce billet : &#171;&#160;mon IDE est le meilleur&#160;&#187; mais cela aurait tout de suite attiré les trolls&#8230; C&#8217;est comme pour les discussions sur Vim/Emacs, chacun pense que son outils est le meilleur et personne n’écoute les arguments des autres. Suite à une discussion récente, j&#8217;ai repensé à un billet du blog de Adam Bien. Ce billet est une constatation sur les IDEs qu&#8217;il a pu voir en action lors de JavaOne 2008 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>J&rsquo;aurais pu nommer ce billet : &laquo;&nbsp;mon IDE est le meilleur&nbsp;&raquo; mais cela aurait tout de suite attiré les trolls&#8230; C&rsquo;est comme pour les discussions sur Vim/Emacs, chacun pense que son outils est le meilleur et personne n’écoute les arguments des autres.</p>
<p>Suite à une discussion récente, j&rsquo;ai repensé à un billet du blog de Adam Bien. <a href="http://www.adam-bien.com/roller/abien/entry/javaone_and_the_most_used">Ce billet</a> est une constatation sur les IDEs qu&rsquo;il a pu voir en action lors de JavaOne 2008 : IntelliJ et NetBeans. La seule fois qu&rsquo;il a vu Eclipse c&rsquo;était pour une session traitant de Eclipse RCP.</p>
<p>Alors qu&rsquo;en est-il de l&rsquo;IDE leader dans les entreprises ? Quand on regarde <a href="http://www.developpez.net/forums/showthread.php?t=468233">les sondages</a> du forum de Developpez, Eclipse est l&rsquo;IDE le plus utilisé, il fait d&rsquo;ailleurs souvent partie des prérequis dans les annonces pour des postes de développeurs. Dans les commentaires du billet d’Adam, la discussion en vient d’ailleurs au fait qu’il vaut mieux comparer dans les annonces plutôt que de comparer avec Google Trends.</p>
<p>Pour revenir au titre de ce blog, pourquoi pensez-vous que votre IDE est le meilleur ?</p>
<p> <span id="more-41"></span></p>
<p>C’est le meilleur, parce que c&rsquo;est celui que vous utilisez ? Parce qu&rsquo;il a cette petite fonctionnalité qui va bien ? </p>
<p> La question à se poser est : avez-vous sérieusement essayer les autres IDEs ? Avez vous pris le peine de coder et cela plus de 5 minutes avec un autre IDE pour pouvoir comparer ?<br /> <br />
Quand on parle de NetBeans, les gens disent souvent qu&rsquo;il est lent et lourd, mais ces personnes ont-elles essayé les dernières versions de NetBeans avec son éditeur complètement réécrit ?<br /> <br />
Quand on parle d&rsquo;Eclipse, certains pensent immédiatement à l&rsquo;enfer des plugins incompatibles, mais ont-ils essayé les dernières versions comme Europa ou Callisto, avec un effort de synchronisation sur les livraisons des plugins ?<br /> <br />
Quand on parle d&rsquo;IntelliJ, les gens pensent à un outil de geeks avec l&rsquo;absence de wizards, mais ont-ils essayé plus avant cet IDE notamment pour le refactoring ?</p>
<p>Les IDEs offrent de plus en plus des fonctionnalités d&rsquo;import des projets depuis un autre IDE. L&rsquo;utilisation de Maven et sa prise en compte par les IDEs contribue aussi à rendre les projets indépendants des IDEs. Alors la solution ne serait-elle pas d&rsquo;utiliser plusieurs IDEs selon ce que l’on fait?</p>
<p>Cette dernière solution me semble la bonne, peut être parce que c&rsquo;est celle que j&rsquo;utilise. Pour en avoir parler dans les conférences où j’ai eu la chance d’aller, je sais que de nombreuses personnes utilisent comme moi plusieurs IDEs. <br />
J&rsquo;aime bien NetBeans pour la création de GUI en WYSIWYG (Swing). J&rsquo;utilise aussi son &laquo;&nbsp;visual web&nbsp;&raquo; pour le développement rapide de pages JSF (quand il s&rsquo;agit d&rsquo;un test de taglib). Par contre je préfère l&rsquo;éditeur de code de IntelliJ pour tous ce qui est code. Pour les tests de technologies je me tourne aussi régulièrement vers NetBeans pour son support souvent en avance des dernières versions de spécifications.</p>
<p>En conclusion, comme j&rsquo;utilise IntelliJ et NetBeans pour mon usage personnel, mais aussi Eclipse et BEA Workshop pour l&rsquo;usage professionnel, je vais essayer de faire une série de billets comparant les fonctionnalités de ces différents IDEs </p>
<p>Et vous, êtes vous monoIDE ou polyIDEs?</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>La controverse des closures</title>
		<link>https://blog.developpez.com/christophej/p4723/java/la_controverse_des_closures</link>
		<comments>https://blog.developpez.com/christophej/p4723/java/la_controverse_des_closures#comments</comments>
		<pubDate>Sat, 29 Dec 2007 14:54:56 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Si vous avez lu quelques compte-rendus de Javapolis, vous avez du voir que la session de Joshua Bloch intitulée &#171;&#160;The Closures Controversy&#160;&#187; a été une des plus plébiscitées. Bonne nouvelle pour tous ceux qui n&#8217;ont pu se rendre à Javapolis cette année ou qui n&#8217;ont pu assister à cette session, la session est déjà sur le site Parley. La session n&#8217;est pas évidente à suivre (Joshua Bloch parle parfois vite) et il faut avoir déjà [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Si vous avez lu quelques compte-rendus de <a href="http://www.javapolis.com/confluence/display/JP07/Home">Javapolis</a>, vous avez du voir que la session de Joshua Bloch intitulée &laquo;&nbsp;The Closures Controversy&nbsp;&raquo; a été une des plus plébiscitées.<br />
Bonne nouvelle pour tous ceux qui n&rsquo;ont pu se rendre à Javapolis cette année ou qui n&rsquo;ont pu assister à cette session, la session est déjà sur le site <a href="http://www.parleys.com/display/PARLEYS/Home">Parley</a>. </p>
<p>La session n&rsquo;est pas évidente à suivre (Joshua Bloch parle parfois vite) et il faut avoir déjà vu un peu les closures pour tout suivre (certains morceaux de code font peur au premier abord), mais comme l&rsquo;interface du site est formidable, il est possible de naviguer de diapositive en diapositive et donc de revenir au début de la diapositives si vous avez raté quelque chose, ou encore de mettre en pause le temps de lire le code.</p>
<p>Pour ceux qui sont intéressés par les closures, ceux qui veulent savoir ce que Joshua Bloch reproche à la proposition BGGA, ce que sont CICE et ARM, et pourquoi il craint que &laquo;&nbsp;the feel of Java&nbsp;&raquo; ne disparaisse, réservez vous 42 minutes (ou moins si vous le regardez en plusieurs fois) et allez voir <a href="http://www.parleys.com/display/PARLEYS/The+Closures+Controversy?showComments=true"><strong>la présentation</strong></a> </p>
<p>Au passage, Stephan Janssen a présenté la nouvelle version de l&rsquo;interface du site lors du Keynote et elle promet d&rsquo;être formidable (plein écran, bookmark et commentaire sur une diapositive précise, gestion de mode offline&#8230;), par contre il faudra attendre encore un peu&#8230;</p>
<p><strong>EDIT</strong> : la session de questions a été ajoutée après mon poste. Vous pouvez la voir à <a href="http://parleys.com/display/PARLEYS/Closures+Questions+with+Joshua+Bloch?showComments=true">cette adresse</a>.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GWT dévoré par le Leopard</title>
		<link>https://blog.developpez.com/christophej/p4483/java/gwt_devore_par_le_leopard</link>
		<comments>https://blog.developpez.com/christophej/p4483/java/gwt_devore_par_le_leopard#comments</comments>
		<pubDate>Mon, 05 Nov 2007 19:42:15 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Technique]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Depuis sa sortie, Leopard, la nouvelle version de Mac OS X, fait pas mal parler de lui pour les nouveautés, la rapidité, les amélioration esthétiques. Il a aussi fait beaucoup de bruit dans la blogosphère Java pour le support de Java qui est resté collé en version 5 alors que Java 6 est sortie depuis presque 1 an&#8230; On peut toujours se consoler en se disant que cette nouvelle version vient en 64 bits. On [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Depuis sa sortie, Leopard, la nouvelle version de Mac OS X, fait pas mal parler de lui pour les nouveautés, la rapidité, les amélioration esthétiques. Il a aussi fait beaucoup de bruit dans la blogosphère Java pour le support de Java qui est resté collé en version 5 alors que Java 6 est sortie depuis presque 1 an&#8230; On peut toujours se consoler en se disant que cette nouvelle version vient en 64 bits. </p>
<p>On se disait que s&rsquo;il y a une catégorie de développeur Java que cela ne gênerait pas, ce serait les développeurs utilisant <acronym title="Google Web Toolkit">GWT</acronym>. En effet, la célèbre API qui transforme le code Java en Javascript, ne supporte pour l&rsquo;instant que Java en version 1.4.</p>
<p>Et bien ces développeurs aussi vont faire partie des mécontents du Leopard. En effet, sur la dernière mouture de l&rsquo;OS, le mode hébergé de GWT (qui permet entre autre le débuggage) ne fonctionne pas. Le navigateur apparait puis disparait subitement ou se gèle&#8230;.<br />
Il semble qu&rsquo;il y ai plusieurs bugs simultanés à l&rsquo;origine du problème. Du coté Apple on trouve l&rsquo;implémentation de JAXP, l&rsquo;initialisation du sous-système d&rsquo;AWT et un thread sans ClassLoader&#8230; Du coté de Google, le WebKit utilisé pour le navigateur du mode hébergé qui ne fonctionne pas sur Carbon&#8230;.</p>
<p>Donc un seul conseil à ceux qui font du GWT sur Mac OS X, pas de Leopard avant que <a href="http://code.google.com/p/google-web-toolkit/issues/detail?id=1792">ce bug</a> ne soit noté comme résolu&#8230;</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>L&#8217;interface qui donne des boutons</title>
		<link>https://blog.developpez.com/christophej/p4403/java/reflexions/des_interfaces_pour_les_utilisateurs</link>
		<comments>https://blog.developpez.com/christophej/p4403/java/reflexions/des_interfaces_pour_les_utilisateurs#comments</comments>
		<pubDate>Thu, 18 Oct 2007 20:58:19 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Je ne sais pas si vous connaissez le blog de Kathy Sierra. Elle est à l&#8217;origine de la série de livre &#171;&#160;Tête premiere&#160;&#187; avec son style si particulier. Elle tenait aussi un blog dans le même style que les livres, mais malheureusement suspendu : creating Passionate User. Je vous recommande fortement la lecture de ces anciens billets. Je relisais un de ses posts sur les différents types d&#8217;applications et j&#8217;ai du coup repensé à un [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Je ne sais pas si vous connaissez le blog de Kathy Sierra. Elle est à l&rsquo;origine de la série de livre &laquo;&nbsp;Tête premiere&nbsp;&raquo; avec son style si particulier. Elle tenait aussi un blog dans le même style que les livres, mais malheureusement suspendu : <a href="http://headrush.typepad.com/creating_passionate_users/">creating Passionate User</a>. Je vous recommande fortement la lecture de ces anciens billets.<br />
Je relisais un de ses posts sur <a href="http://headrush.typepad.com/creating_passionate_users/2007/03/is_your_app_an_.html">les différents types d&rsquo;applications</a> et j&rsquo;ai du coup repensé à un truc qui me frustre sur les interfaces d&rsquo;applications : les boutons.</p>
<p>Il y a trois catégories d&rsquo;interfaces: </p>
<ul>
<li>celles qui n&rsquo;affichent que les boutons utiles ou fonctionnels</li>
<li>celles qui affichent une partie des boutons grisés</li>
<li>celles qui affichent tous les boutons en permanence</li>
</ul>
<p>La première catégorie est pratique on ne voit que ce que l&rsquo;on peut faire, on ne se pose pas de question. Par contre dès que l&rsquo;on veut faire des choses qui ne sont pas en accès direct, on peut chercher longtemps où et comment faire apparaitre les boutons. Il faut que les cinématiques soient bien pensées et intuitives. Généralement ces applications ne sont pas trop complexes.<br />
<span id="more-38"></span><br />
La seconde catégorie, avec ses boutons grisés, vous fait voir tous ce que vous pourriez faire si vous aviez le droit ou aviez fait la bonne séquence d&rsquo;actions. Par rapport à la première catégorie, comme on voit déjà les boutons, il ne reste plus qu&rsquo;à trouver comment les activer. C&rsquo;est un peu plus user-friendly que la précédente catégorie. Par contre quand on cherche depuis un moment comment rendre actif ces &laquo;&nbsp;satanés&nbsp;&raquo; boutons, cela devient frustrant et on a un peu l&rsquo;impression que l&rsquo;application nous dit </p>
<blockquote><p>T&rsquo;as vu un peu tout ce que tu pourrais faire si tu avais le droit&#8230;</p></blockquote>
<p>La dernière catégorie est sans doute la pire. Vous avez tous les boutons actifs mais une fois sur deux quand vous cliquez dessus, au bout de quelques secondes, un message d&rsquo;erreur vous annonce qu&rsquo;il n&rsquo;est pas possible de faire cela.<br />
C&rsquo;est l&rsquo;application qui vous dit </p>
<blockquote><p>Bien tenté mais tu n&rsquo;as pas le droit !</p></blockquote>
<p>Avec un peu de chance, le message est suffisamment clair pour comprendre ce qui n&rsquo;allait pas, mais ce n&rsquo;est pas toujours le cas&#8230;.</p>
<p>Dans les trois types d&rsquo;interface, je finis généralement par une phase d&rsquo;exploration  à tâtons qui une fois sur deux se solde par un echec ou mon incapacité à me souvenir de tous les endroits où j&rsquo;ai cliqué/coché pour faire apparaitre/activer/fonctionner le fameux bouton.</p>
<p>Il y a des jours où l&rsquo;on a l&rsquo;impression que des développeurs sadiques préparent ces interfaces avec des rires de savants fous qui résonnent dans les bureaux&#8230;</p>
<p>Je sais, on va me dire que je devrais prendre plus de temps pour consulter l&rsquo;aide ou lire les manuels au lieu de cliquer bêtement, mais avez-vous déjà vu un homme perdu en voiture demander son chemin&#8230;.</p>
<p>Et vous quelle est le type d&rsquo;interface qui vous fâche le plus?</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Le consumer JRE en &#171;&#160;early access&#160;&#187;</title>
		<link>https://blog.developpez.com/christophej/p4321/java/le_consumer_jre_en_early_access</link>
		<comments>https://blog.developpez.com/christophej/p4321/java/le_consumer_jre_en_early_access#comments</comments>
		<pubDate>Mon, 01 Oct 2007 20:32:40 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Si vous suivez ce blog, vous savez ce qu&#8217;est le consumer JRE (pour les distraits, j&#8217;en parle ici, et encore là). Ce consumer JRE commence donc à se concrétiser. Comme l&#8217;indique Anuradha dans son blog vous pouvez déjà tester le nouveau Look and Feel Nimbus, le nouveau support de l&#8217;accélération hardware pour le graphisme et surtout le Java QuickStarter. Ce dernier est un service fonctionnant sur Windows qui &#171;&#160;maintient&#160;&#187; en mémoire environ 20 Mo des [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Si vous suivez ce blog, vous savez ce qu&rsquo;est le consumer JRE (pour les distraits, j&rsquo;en parle <a href="http://blog.developpez.com/index.php?blog=127&amp;title=le_consumer_jre_plebiscite">ici</a>, et encore <a href="http://blog.developpez.com/index.php?blog=127&amp;title=retour_sur_le_customer_jre">là</a>).<br />
Ce consumer JRE commence donc à se concrétiser.<br />
Comme l&rsquo;indique Anuradha dans <a href="http://theanuradha.blogspot.com/2007/10/java-se-6-update-n-consumer-jre.html">son blog</a> vous pouvez déjà tester le nouveau Look and Feel <a href="https://nimbus.dev.java.net/">Nimbus</a>, le nouveau support de l&rsquo;accélération hardware pour le graphisme et surtout le Java QuickStarter. Ce dernier est un service fonctionnant sur Windows qui &laquo;&nbsp;maintient&nbsp;&raquo; en mémoire environ 20 Mo des fichiers les plus couramment utilsés dans le JRE, l&rsquo;objectif étant de s&rsquo;affranchir des temps d&rsquo;accès disque lors du démarrage de la JVM.</p>
<p>Dans les éléments qui viendront plus tard, on trouve le Java Kernel (le noyau du JRE qui permet de diminuer les tailles de download) et le nouveau système d&rsquo;installation qui patchera la version installée plutôt que de réinstaller un JRE complet à coté. </p>
<p>Que ceux qui peuvent tester (il faut un Windows) n&rsquo;hésitent pas à donner leurs impressions.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Consumer JRE et Java 7</title>
		<link>https://blog.developpez.com/christophej/p4126/java/consumer_jre_et_java_7</link>
		<comments>https://blog.developpez.com/christophej/p4126/java/consumer_jre_et_java_7#comments</comments>
		<pubDate>Mon, 27 Aug 2007 20:18:06 +0000</pubDate>
		<dc:creator><![CDATA[christopheJ]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Réflexions]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Une seule entrée de blog car le temps manque pour les multiplier&#8230; Je vais donc parler du consumer JRE, le runtime allégé pour utilisateurs, et des nouveautés de Java 7. J&#8217;ai déjà parlé plusieurs fois du consumer JRE (ici et la). Ce JRE est attendu par beaucoup car il permettrait de résoudre ce que certains considèrent comme un gros handicap de Java face aux technologies comme Flash : la taille de téléchargement et le temps [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Une seule entrée de blog car le temps manque pour les multiplier&#8230;<br />
Je vais donc parler du consumer JRE, le runtime allégé pour utilisateurs, et des nouveautés de Java 7.<br />
<span id="more-3"></span><br />
J&rsquo;ai déjà parlé plusieurs fois du consumer JRE (<a href="http://blog.developpez.com/index.php?blog=127&amp;title=retour_sur_le_customer_jre">ici</a> et <a href="http://blog.developpez.com/index.php?blog=127&amp;title=le_consumer_jre_plebiscite">la</a>). Ce JRE est attendu par beaucoup car il permettrait de résoudre ce que certains considèrent comme un gros handicap de Java face aux technologies comme Flash : la taille de téléchargement et le temps de démarrage. Parmi les prérequis pour ce consumer JRE, il y avait donc la création du Java Kernel, un coeur allégé ne contenant que les classes les plus couramment utilisées. Il semble que ce Java Kernel soit dans le prochain update de Java SE 6 update 4, selon <a href="http://weblogs.java.net/blog/forax/archive/2007/08/java_kernel_in.html">le blog de Rémi Forax</a>.<br />
Nous avons donc ici, un premier pas vers le consumer JRE, et celui ci ne semble pas être le plus simple, ce qui est encourageant.</p>
<p>Le deuxième point est Java 7 et toutes les discussions autour de ce qu&rsquo;il doit contenir. Parmi les grands favoris, on trouve, entre autres, les closures et les properties. On trouve aussi tout un tas de propositions comme l&rsquo;héritage multiple, la surcharge d&rsquo;opérateurs,le support SQL au niveau du langage, ou votre fonctionnalité préférée d&rsquo;un autre langage. L&rsquo;argument</p>
<blockquote><p>DotNet (et notamment C#) offre la fonctionnalité depuis la version 3, Java prend du retard</p></blockquote>
<p>revient aussi régulièrement.</p>
<p>Chet Haase en a profité pour faire <a href="http://weblogs.java.net/blog/chet/archive/2007/08/code_complete_n.html">ses propositions</a> sur le ton de l&rsquo;humour, et ses lecteurs s&rsquo;en donnent à coeur joie.<br />
Pour un aperçu complet des discussions autour de Java 7, vous pouvez consulter l&rsquo;excellent travail de recensement que fait Alex Miller sur <a href="http://tech.puredanger.com/java7">son blog</a>.</p>
<p>Plus sérieusement, <a href="http://www.java.net/pub/pq/170">un sondage</a> montre que quand même plus d&rsquo;un quart des développeurs ne veulent pas de changement. Là aussi les commentaires sont intéressants, ce qui a valu au sondage d&rsquo;être deux fois de suite dans le blog journalier de l&rsquo;éditeur de java.net (<a href="http://weblogs.java.net/blog/editors/archives/2007/08/shut_us_down.html">ici</a> et <a href="http://weblogs.java.net/blog/editors/archives/2007/08/wrong.html">là</a>). Personnellement je ne suis pas contre le support des String dans les switch et un meilleur support du xml. Par contre certaines propositions comme l&rsquo;héritage multiple ou la surcharge des opérateurs m&rsquo;inquiètent un peu plus. Quand je vois certaines horreurs dans des codes, je me dis qu&rsquo;on donnerai alors des outils bien dangereux aux développeurs pour un apport quand même minime.</p>
<p>Avant de me faire agresser, je vais tenter de m&rsquo;expliquer&#8230;<br />
Pour l&rsquo;héritage multiple, j&rsquo;ai du mal à comprendre le concept. L&rsquo;héritage est souvent décrit comme une spécialisation d&rsquo;une classe. Alors pourquoi spécialiser deux classes d&rsquo;un coup en les réunissant dans une seule? Si elles sont suffisamment semblables pour cela, il y a, à mon avis un problème de conception, elle devrait avoir un lien&#8230;. Si vous avez un exemple clair, n&rsquo;hésitez pas à laisser un commentaire&#8230;.<br />
Concernant la surcharge des opérateurs, cela me semble justifié pour les classes représentant des numériques ou pour des classes représentant des matrices. Mais pour les autres, la majorité des classes, cela me semble inutile. Si j&rsquo;ajoute deux classes représentant des voitures, je n&rsquo;obtiens pas une sorte de voiture à 10 places et 8 roues mais plutôt deux voitures que je mets dans un tableau ou une Collection, pas besoin de surcharge des opérateurs pour ces choses là.</p>
<p>Le succès de Java est du à sa simplicité. Je trouve que certaines de ces évolutions vont complexifier le langage et la lecture du code ou ne seront utiliser que par une &laquo;&nbsp;certaine élite&nbsp;&raquo; des développeurs. Avez vous déjà lu et compris du code avec des closures? Nous somme sans doute nombreux à utiliser les Generics pour typer nos Collections. Mais qui utilise ou même comprend cette syntaxe tirée de la page 18 du <a href="http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf">tutoriel de Sun sur les Générics</a>?</p>
<blockquote><p>interface Sink&lt;T&gt;{<br />
   flush(T,t);<br />
} </p>
<p>public static &lt;T&gt; T writeAll(Collection&lt;T&gt; coll, Sink&lt;? super T&gt; snk){&#8230;.}</p></blockquote>
<p>Il serait sans doute plus intéressant de corriger <a href="http://bugs.sun.com/bugdatabase/top25_bugs.do">les bugs les plus demandés</a> ou d&rsquo;implémenter <a href="http://bugs.sun.com/bugdatabase/top25_rfes.do">les améliorations les plus demandées</a>. Si SUN veut vraiment le retour de Java sur le Desktop, il ne faudra pas qu&rsquo;un JRE plus léger et rapide, mais aussi un meilleur support du multimédia et de la connectivité de la machine (série, USB, FireWire&#8230;).</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
