<?xml version="1.0" encoding="iso-8859-1"?><!-- generator="b2evolution/2.4.6" -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Le blog de DNG Consulting</title>
		<link>http://www.dng-consulting.com/blogs/index.php?blog=1</link>
		<description>blog de l'ami Sami</description>
		<language>fr-FR</language>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		<admin:generatorAgent rdf:resource="http://b2evolution.net/?v=2.4.6"/>
		<ttl>60</ttl>
				<item>
			<title>Google proposera enfin un outil WYSIWYG pour GWT</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/08/05/google-proposera-enfin-un-outil-wysiwyg-1?blog=1</link>
			<pubDate>Thu, 05 Aug 2010 13:45:05 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">210@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Le premier &amp;#224; m'avoir mis au courant est &lt;a href=&quot;http://twitter.com/nicolasWetzel&quot;&gt;Nicolas Wetzel&lt;/a&gt; avec qui nous &amp;#233;changions il y a quelques mois sur le sujet. &lt;/p&gt;  &lt;p&gt;J'insiste sur le fait que Google ne me donne aucune information secr&amp;#232;te, ou de nature &amp;#224; faire croire que je faisais partie des initi&amp;#233;s dans cette annonce :-), j'ai simplement toujours eu cette petite intuition. Lorsque GWT 2 est sortie en Janvier dernier, de nombreuses personnes m'ont demand&amp;#233; quel &amp;#233;tait l'int&amp;#233;r&amp;#234;t d'une technologie telle que UIBinder dans l'enchev&amp;#234;trement des briques propos&amp;#233;es.&amp;#160; Je leur ai toujours r&amp;#233;torqu&amp;#233; que le but ultime d'un outil de structuration d'IHM XML &amp;#233;tait de fournir un concepteur graphique. D'un point de vue technique, c'est une aberration de croire qu'on peut faire du r&amp;#233;tro-engeenering d'IHM &amp;#224; partir du code source. C'est ce que &lt;a href=&quot;http://www.instantiations.com/&quot;&gt;GWT Designer&lt;/a&gt; faisait et j'ai toujours d&amp;#233;conseill&amp;#233; cette approche &amp;#224; nos clients. GWT Designer dans sa premi&amp;#232;re version &amp;#233;tait un simple &amp;#171; gadget &amp;#187; marketing. &lt;/p&gt;  &lt;p&gt;Plusieurs fois sur ce blog j'ai envoy&amp;#233; des messages subliminaux aux &amp;#233;ventuels entrepreneurs. Dans l'ann&amp;#233;e 2010, celui qui se serait lanc&amp;#233; dans un outil WYSIWYG g&amp;#233;n&amp;#233;rant de l'UiBinder &amp;#233;tait assur&amp;#233; d'&amp;#234;tre millionnaire. Et forc&amp;#233;ment, qui de mieux plac&amp;#233; qu'un professionnel du domaine. Lorsqu'on sait faire un outil WYSIWYG par dessus un langage, on sait facilement l'adapter par dessus un autre. La soci&amp;#233;t&amp;#233; Instantiation avait tout pour r&amp;#233;ussir. J'en avais parl&amp;#233; le 2 Juillet sur ce blog, un des d&amp;#233;veloppeurs du projet commen&amp;#231;ait &amp;#224; se rapprocher de Google. &lt;/p&gt;  &lt;p&gt;Ce &lt;a href=&quot;http://www.instantiations.com/&quot;&gt;rachat d'instantiation&lt;/a&gt; officialis&amp;#233; aujourd'hui est donc une excellente nouvelle pour tous les fans de GWT, pour tous les amoureux de cette technologie. Le r&amp;#234;ve ultime de tout d&amp;#233;veloppeur d'applications Web (j'insiste sur le terme &amp;#171; Application &amp;#187; car nous n'utiliserons pas cet outil pour faire des sites web institutionnels) se r&amp;#233;alise enfin. Concevoir une application Web visuellement par simple glisser/d&amp;#233;placer en tirant partie d'AJAX, du support multi-navigateurs automatique et sans se soucier de HTML et JavaScript est (presque) &amp;#224; port&amp;#233;e du doigt. &amp;#171; Presque &amp;#187;, car UiBinder n'est pas totalement pr&amp;#234;t. Laissons un ou deux ans &amp;#224; cet outil et GWT sera enfin complet.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Le premier &#224; m'avoir mis au courant est <a href="http://twitter.com/nicolasWetzel">Nicolas Wetzel</a> avec qui nous &#233;changions il y a quelques mois sur le sujet. </p>  <p>J'insiste sur le fait que Google ne me donne aucune information secr&#232;te, ou de nature &#224; faire croire que je faisais partie des initi&#233;s dans cette annonce :-), j'ai simplement toujours eu cette petite intuition. Lorsque GWT 2 est sortie en Janvier dernier, de nombreuses personnes m'ont demand&#233; quel &#233;tait l'int&#233;r&#234;t d'une technologie telle que UIBinder dans l'enchev&#234;trement des briques propos&#233;es.&#160; Je leur ai toujours r&#233;torqu&#233; que le but ultime d'un outil de structuration d'IHM XML &#233;tait de fournir un concepteur graphique. D'un point de vue technique, c'est une aberration de croire qu'on peut faire du r&#233;tro-engeenering d'IHM &#224; partir du code source. C'est ce que <a href="http://www.instantiations.com/">GWT Designer</a> faisait et j'ai toujours d&#233;conseill&#233; cette approche &#224; nos clients. GWT Designer dans sa premi&#232;re version &#233;tait un simple &#171; gadget &#187; marketing. </p>  <p>Plusieurs fois sur ce blog j'ai envoy&#233; des messages subliminaux aux &#233;ventuels entrepreneurs. Dans l'ann&#233;e 2010, celui qui se serait lanc&#233; dans un outil WYSIWYG g&#233;n&#233;rant de l'UiBinder &#233;tait assur&#233; d'&#234;tre millionnaire. Et forc&#233;ment, qui de mieux plac&#233; qu'un professionnel du domaine. Lorsqu'on sait faire un outil WYSIWYG par dessus un langage, on sait facilement l'adapter par dessus un autre. La soci&#233;t&#233; Instantiation avait tout pour r&#233;ussir. J'en avais parl&#233; le 2 Juillet sur ce blog, un des d&#233;veloppeurs du projet commen&#231;ait &#224; se rapprocher de Google. </p>  <p>Ce <a href="http://www.instantiations.com/">rachat d'instantiation</a> officialis&#233; aujourd'hui est donc une excellente nouvelle pour tous les fans de GWT, pour tous les amoureux de cette technologie. Le r&#234;ve ultime de tout d&#233;veloppeur d'applications Web (j'insiste sur le terme &#171; Application &#187; car nous n'utiliserons pas cet outil pour faire des sites web institutionnels) se r&#233;alise enfin. Concevoir une application Web visuellement par simple glisser/d&#233;placer en tirant partie d'AJAX, du support multi-navigateurs automatique et sans se soucier de HTML et JavaScript est (presque) &#224; port&#233;e du doigt. &#171; Presque &#187;, car UiBinder n'est pas totalement pr&#234;t. Laissons un ou deux ans &#224; cet outil et GWT sera enfin complet.</p><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/08/05/google-proposera-enfin-un-outil-wysiwyg-1?blog=1#comments</comments>
		</item>
				<item>
			<title>DotNetGuru tire sa r&#233;v&#233;rence</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/07/08/dotnetguru-tire-sa-raeacute-vaeacute-ren?blog=1</link>
			<pubDate>Wed, 07 Jul 2010 22:42:26 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">News</category>			<guid isPermaLink="false">208@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Il y a de cela presque 10 ans naissait &lt;a href=&quot;http://www.dotnetguru.org&quot;&gt;DotNetGuru.org&lt;/a&gt;. Un site d&amp;#233;di&amp;#233; &amp;#224; l'architecture logicielle dans le monde .NET et aux technologies dites &quot;alternatives&quot;. Le style DotNetGuru (ou DNG), c'&amp;#233;tait un contre-pouvoir &amp;#224; l'h&amp;#233;g&amp;#233;monie technique de Microsoft et une certaine id&amp;#233;e de l'informatique d'entreprise. Un tout teint&amp;#233; d'ouverture d'esprit et d'interop&amp;#233;rabilit&amp;#233;. &lt;/p&gt;  &lt;p&gt;Tout au long de ces ann&amp;#233;es, nous avons cess&amp;#233; d'insister sur la richesse de l'autre et l'int&amp;#233;r&amp;#234;t de ma&amp;#238;triser les technologies concurrentes.&lt;/p&gt;  &lt;p&gt;Au d&amp;#233;but de .NET, les termes mapping objet/relationnel ou portabilit&amp;#233; &amp;#233;taient tabous, je me rappelle encore de discussions enflamm&amp;#233;es avec des responsables de Microsoft arguant sur l'int&amp;#233;r&amp;#234;t de garder ADO.NET mono provider pour ne supporter que SQL Server. Je me rappelle d'ing&amp;#233;nieurs Microsoft rejetant avec force l'id&amp;#233;e m&amp;#234;me qu'un jour .NET puisse s'ouvrir &amp;#224; autre chose que du Microsoft.&amp;#160; &lt;/p&gt;  &lt;p&gt;En dix ans, nous avons essay&amp;#233; de briser tous ces tabous, la programmation par aspects, UML, l'injection de d&amp;#233;pendances, la s&amp;#233;paration en couches, l'instrumentation de code, .NET sur Linux. Combattre le quick and dirty et la manie du glisser d&amp;#233;placer pour introduire une conception robuste et p&amp;#233;renne tout aussi compatible avec le d&amp;#233;veloppement RAD. Tout cela au travers de centaines d'articles repr&amp;#233;sentant des milliers&amp;#160; de pages. Des heures, que dis-je, des nuits de travail. &lt;/p&gt;  &lt;p&gt;J'ai construit ce site en Php &amp;#224; une &amp;#233;poque o&amp;#249; il n'existait aucun outil .NET pour faire ce genre de choses. De nombreux auteurs talentueux m'ont rejoint. La plupart sont devenus des amis, je ne les cite pas, ils se reconnaitront tous, DotNetGuru leur doit beaucoup. Chacun, par ses &amp;#233;crits, a contribu&amp;#233; &amp;#224; faire &amp;#233;voluer les mentalit&amp;#233;s. &lt;/p&gt;  &lt;p&gt;Aujourd'hui, nous pouvons l'affirmer haut et fort ; Microsoft a chang&amp;#233; et .NET s'est m&amp;#233;tamorphos&amp;#233;. Des communaut&amp;#233;s (Alt.net, .) se sont cr&amp;#233;&amp;#233;es sur le m&amp;#234;me mod&amp;#232;le que DotNetGuru et l'heure est &amp;#224; l'int&amp;#233;rop&amp;#233;rabilit&amp;#233;, aux DSL, &amp;#224; Silverlight sur Linux (qui l'aurait imagin&amp;#233; en 2001), Mono, VS 2010 et ses diagrammes UML, Entity Framework, Linq,etc ... Plus personne ne remet en cause les qualit&amp;#233;s de .NET, ni celles de Java d'ailleurs. Ces deux plateformes sont tout simplement devenues le pain quotidien de nombre d'entreprises. &lt;/p&gt;  &lt;p&gt;Il faut donc savoir tourner la page, tirer sa r&amp;#233;v&amp;#233;rence et acter le fait que cette bataille n'est plus &amp;#224; mener. Depuis quelques temps, le site est de moins en mois maintenu et mes obligations quotidiennes ne me permettent plus de fournir un niveau de qualit&amp;#233; digne de ce que vous &amp;#234;tes en droit d'attendre. Je continue &amp;#233;videmment &amp;#224; faire du .NET (tout comme du Java), j'ai toujours autant d'id&amp;#233;es et de choses &amp;#224; faire partager, mais mes priorit&amp;#233;s ont chang&amp;#233;. &lt;/p&gt;  &lt;p&gt;Ce blog (et mon compte twitter) resteront mes modes de communication privil&amp;#233;gi&amp;#233;s dans les mois &amp;#224; venir. DotNetGuru.org sera actif pendant quelques mois, le temps de laisser la communaut&amp;#233; profiter pleinement du contenu existant. Ensuite, je briserai les cha&amp;#238;nes qui me relient &amp;#224; ce site, pour lequel j'ai tant donn&amp;#233; mais qui me l'a si bien rendu. &lt;/p&gt;  &lt;p&gt;Don't stay tuned anymore ...&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/media/users/sami/DotNetGurutiresarvrence_61C/image.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://www.dng-consulting.com/blogs/media/users/sami/DotNetGurutiresarvrence_61C/image_thumb.png&quot; width=&quot;408&quot; height=&quot;211&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Il y a de cela presque 10 ans naissait <a href="http://www.dotnetguru.org">DotNetGuru.org</a>. Un site d&#233;di&#233; &#224; l'architecture logicielle dans le monde .NET et aux technologies dites "alternatives". Le style DotNetGuru (ou DNG), c'&#233;tait un contre-pouvoir &#224; l'h&#233;g&#233;monie technique de Microsoft et une certaine id&#233;e de l'informatique d'entreprise. Un tout teint&#233; d'ouverture d'esprit et d'interop&#233;rabilit&#233;. </p>  <p>Tout au long de ces ann&#233;es, nous avons cess&#233; d'insister sur la richesse de l'autre et l'int&#233;r&#234;t de ma&#238;triser les technologies concurrentes.</p>  <p>Au d&#233;but de .NET, les termes mapping objet/relationnel ou portabilit&#233; &#233;taient tabous, je me rappelle encore de discussions enflamm&#233;es avec des responsables de Microsoft arguant sur l'int&#233;r&#234;t de garder ADO.NET mono provider pour ne supporter que SQL Server. Je me rappelle d'ing&#233;nieurs Microsoft rejetant avec force l'id&#233;e m&#234;me qu'un jour .NET puisse s'ouvrir &#224; autre chose que du Microsoft.&#160; </p>  <p>En dix ans, nous avons essay&#233; de briser tous ces tabous, la programmation par aspects, UML, l'injection de d&#233;pendances, la s&#233;paration en couches, l'instrumentation de code, .NET sur Linux. Combattre le quick and dirty et la manie du glisser d&#233;placer pour introduire une conception robuste et p&#233;renne tout aussi compatible avec le d&#233;veloppement RAD. Tout cela au travers de centaines d'articles repr&#233;sentant des milliers&#160; de pages. Des heures, que dis-je, des nuits de travail. </p>  <p>J'ai construit ce site en Php &#224; une &#233;poque o&#249; il n'existait aucun outil .NET pour faire ce genre de choses. De nombreux auteurs talentueux m'ont rejoint. La plupart sont devenus des amis, je ne les cite pas, ils se reconnaitront tous, DotNetGuru leur doit beaucoup. Chacun, par ses &#233;crits, a contribu&#233; &#224; faire &#233;voluer les mentalit&#233;s. </p>  <p>Aujourd'hui, nous pouvons l'affirmer haut et fort ; Microsoft a chang&#233; et .NET s'est m&#233;tamorphos&#233;. Des communaut&#233;s (Alt.net, .) se sont cr&#233;&#233;es sur le m&#234;me mod&#232;le que DotNetGuru et l'heure est &#224; l'int&#233;rop&#233;rabilit&#233;, aux DSL, &#224; Silverlight sur Linux (qui l'aurait imagin&#233; en 2001), Mono, VS 2010 et ses diagrammes UML, Entity Framework, Linq,etc ... Plus personne ne remet en cause les qualit&#233;s de .NET, ni celles de Java d'ailleurs. Ces deux plateformes sont tout simplement devenues le pain quotidien de nombre d'entreprises. </p>  <p>Il faut donc savoir tourner la page, tirer sa r&#233;v&#233;rence et acter le fait que cette bataille n'est plus &#224; mener. Depuis quelques temps, le site est de moins en mois maintenu et mes obligations quotidiennes ne me permettent plus de fournir un niveau de qualit&#233; digne de ce que vous &#234;tes en droit d'attendre. Je continue &#233;videmment &#224; faire du .NET (tout comme du Java), j'ai toujours autant d'id&#233;es et de choses &#224; faire partager, mais mes priorit&#233;s ont chang&#233;. </p>  <p>Ce blog (et mon compte twitter) resteront mes modes de communication privil&#233;gi&#233;s dans les mois &#224; venir. DotNetGuru.org sera actif pendant quelques mois, le temps de laisser la communaut&#233; profiter pleinement du contenu existant. Ensuite, je briserai les cha&#238;nes qui me relient &#224; ce site, pour lequel j'ai tant donn&#233; mais qui me l'a si bien rendu. </p>  <p>Don't stay tuned anymore ...</p>  <p><a href="http://www.dng-consulting.com/blogs/media/users/sami/DotNetGurutiresarvrence_61C/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.dng-consulting.com/blogs/media/users/sami/DotNetGurutiresarvrence_61C/image_thumb.png" width="408" height="211" /></a></p><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/07/08/dotnetguru-tire-sa-raeacute-vaeacute-ren?blog=1#comments</comments>
		</item>
				<item>
			<title>Un designer WYSIWYG pour GWT 2</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/07/02/un-designer-wysiwyg-pour-gwt-2?blog=1</link>
			<pubDate>Thu, 01 Jul 2010 23:11:54 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">207@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Les fondations de GWT 2 ont &amp;#233;t&amp;#233; con&amp;#231;ues pour faciliter l'impl&amp;#233;mentation des concepteurs graphiques. C'est notamment le cas d'UIBinder qui, rappelons-le, s'appuie sur le Deferred Binding, une autre fonctionnalit&amp;#233; cl&amp;#233; de GWT. &lt;/p&gt;  &lt;p&gt;Mais &amp;#224; force de r&amp;#233;p&amp;#233;ter qu'un concepteur graphique est in&amp;#233;luctable, on finit un peu par ne plus y croire. Cette fois, c'est la bonne, ce n'est pas Google qui l'annonce, mais bel et bien la soci&amp;#233;t&amp;#233; en charge de GWT Designer, Instanciations. &lt;a href=&quot;http://groups.google.com/group/google-web-toolkit-contributors/browse_thread/thread/3e9b2193531fb0b4&quot;&gt;Par la voix de Konstantin Scheglov&lt;/a&gt;, Instantiations parle du projet et propose sur la liste des contributeurs de modifier quelques caract&amp;#233;ristiques du framework UiBinder pour le rendre compatible &quot;Design Time&quot; (c'est presque le cas aujourd'hui). &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;GWT Designer &amp;lt;&lt;a href=&quot;http://www.google.com/url?sa=D&amp;amp;q=http://www.instantiations.com/gwtdesigner/&amp;amp;usg=AFQjCNHjwLs-lhOpvPspmipg82XiBbNmDw&quot;&gt;http://www.instantiations.com/gwtdesigner/&lt;/a&gt;&amp;gt; is tool for WYSIWYG building of GWT UI, which development I lead at Instantiations. Its latest release works only with Java source for GWT, but now I work on UiBinder support too and many things already &lt;a href=&quot;http://www.google.com/url?sa=D&amp;amp;q=http://dl.dropbox.com/u/76691/Eclipse/images/Screenshot-20100701-232651.png&amp;amp;usg=AFQjCNHdJvpY7_ZrQybnPFQCeJYygk0CSg&quot;&gt;work&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Les fondations de GWT 2 ont &#233;t&#233; con&#231;ues pour faciliter l'impl&#233;mentation des concepteurs graphiques. C'est notamment le cas d'UIBinder qui, rappelons-le, s'appuie sur le Deferred Binding, une autre fonctionnalit&#233; cl&#233; de GWT. </p>  <p>Mais &#224; force de r&#233;p&#233;ter qu'un concepteur graphique est in&#233;luctable, on finit un peu par ne plus y croire. Cette fois, c'est la bonne, ce n'est pas Google qui l'annonce, mais bel et bien la soci&#233;t&#233; en charge de GWT Designer, Instanciations. <a href="http://groups.google.com/group/google-web-toolkit-contributors/browse_thread/thread/3e9b2193531fb0b4">Par la voix de Konstantin Scheglov</a>, Instantiations parle du projet et propose sur la liste des contributeurs de modifier quelques caract&#233;ristiques du framework UiBinder pour le rendre compatible "Design Time" (c'est presque le cas aujourd'hui). </p>  <blockquote>   <p>GWT Designer &lt;<a href="http://www.google.com/url?sa=D&amp;q=http://www.instantiations.com/gwtdesigner/&amp;usg=AFQjCNHjwLs-lhOpvPspmipg82XiBbNmDw">http://www.instantiations.com/gwtdesigner/</a>&gt; is tool for WYSIWYG building of GWT UI, which development I lead at Instantiations. Its latest release works only with Java source for GWT, but now I work on UiBinder support too and many things already <a href="http://www.google.com/url?sa=D&amp;q=http://dl.dropbox.com/u/76691/Eclipse/images/Screenshot-20100701-232651.png&amp;usg=AFQjCNHdJvpY7_ZrQybnPFQCeJYygk0CSg">work</a></p></blockquote><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/07/02/un-designer-wysiwyg-pour-gwt-2?blog=1#comments</comments>
		</item>
				<item>
			<title>Programmation GWT 2 en e-book</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/06/11/programmation-gwt-2-en-e-book?blog=1</link>
			<pubDate>Thu, 10 Jun 2010 22:37:34 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">206@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Lors de la sortie de Prog GWT 2 de nombreuses personnes m'ont demand&amp;#233; s'il serait un jour disponible au format PDF e-book. C'est aujourd'hui le cas, le site &lt;a href=&quot;http://izibook.eyrolles.com/produit/716/9782212125696/Programmation%20GWT%202&quot;&gt;izibooks propose le livre &amp;#224; 30 euros&lt;/a&gt;. Et chose inesp&amp;#233;r&amp;#233;e pour un livre aussi sp&amp;#233;cialis&amp;#233;, il est num&amp;#233;ro 1 des ventes dans la rubrique informatique chez Eyrolles (&amp;#224; la date d'aujourd'hui). Je ne remercierai &amp;#233;videmment jamais assez les lecteurs de ce livre. &lt;/p&gt;  &lt;p&gt;Sur le terrain, GWT prend une nouvelle dimension. Tous les jours des projets migrent ou se construisent sur la base de cette technologie dont les nombreuses qualit&amp;#233;s masquent l'essentiel des d&amp;#233;fauts. &lt;/p&gt;  &lt;p&gt;Dans le livre j'insiste sur l'int&amp;#233;r&amp;#234;t des bonnes pratiques mais surtout sur l'importance de ma&amp;#238;triser ce que l'on fait. Il m'arrive souvent de comparer GWT aux technologies de mapping O/R. Il y a deux effets kiss-cool dans GWT. Aux premiers abords, les choses paraissent d'une simplicit&amp;#233; enfantine, m&amp;#234;me mamie pourrait coder une petite appli en quelques jours. Mais d&amp;#232;s que le code se complexifie, le second effet appara&amp;#238;t. Il faut ma&amp;#238;triser un minimum le DOM et explorer &amp;#224; minima les dessous de GWT. Tout comme un outil de mapping ne doit pas &amp;#234;tre un moyen de naviguer aveugl&amp;#233;ment dans un graphe objet. Il faut se former et s'informer, le web rec&amp;#232;le de ressources sur GWT et de nombreuses soci&amp;#233;t&amp;#233;s proposent d'ores et d&amp;#233;j&amp;#224; leurs services, comme DNG Consulting. &lt;/p&gt;  &lt;p&gt;Petite pub au passage pour &lt;a href=&quot;http://www.objectif-informatique.fr/weblog/index.php?2010/05/26/75-prochaine-expertise-objectif-le-15-juin-sur-le-theme-gwt-2&quot;&gt;l'&amp;#233;v&amp;#232;nement GWT 2&lt;/a&gt; organis&amp;#233; le 15 Juin par Objectif Informatique sur Paris. C'est entre midi et deux et cela se passe &amp;#224; Paris. J'ai ou&amp;#239; dire que quelques livres Prog GWT 2 y seraient distribu&amp;#233;s.. &lt;/p&gt;  &lt;p&gt;Au plaisir&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/media/users/sami/ProgrammationGWT2enebook_525/image_3.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://www.dng-consulting.com/blogs/media/users/sami/ProgrammationGWT2enebook_525/image.png&quot; width=&quot;368&quot; height=&quot;203&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Lors de la sortie de Prog GWT 2 de nombreuses personnes m'ont demand&#233; s'il serait un jour disponible au format PDF e-book. C'est aujourd'hui le cas, le site <a href="http://izibook.eyrolles.com/produit/716/9782212125696/Programmation%20GWT%202">izibooks propose le livre &#224; 30 euros</a>. Et chose inesp&#233;r&#233;e pour un livre aussi sp&#233;cialis&#233;, il est num&#233;ro 1 des ventes dans la rubrique informatique chez Eyrolles (&#224; la date d'aujourd'hui). Je ne remercierai &#233;videmment jamais assez les lecteurs de ce livre. </p>  <p>Sur le terrain, GWT prend une nouvelle dimension. Tous les jours des projets migrent ou se construisent sur la base de cette technologie dont les nombreuses qualit&#233;s masquent l'essentiel des d&#233;fauts. </p>  <p>Dans le livre j'insiste sur l'int&#233;r&#234;t des bonnes pratiques mais surtout sur l'importance de ma&#238;triser ce que l'on fait. Il m'arrive souvent de comparer GWT aux technologies de mapping O/R. Il y a deux effets kiss-cool dans GWT. Aux premiers abords, les choses paraissent d'une simplicit&#233; enfantine, m&#234;me mamie pourrait coder une petite appli en quelques jours. Mais d&#232;s que le code se complexifie, le second effet appara&#238;t. Il faut ma&#238;triser un minimum le DOM et explorer &#224; minima les dessous de GWT. Tout comme un outil de mapping ne doit pas &#234;tre un moyen de naviguer aveugl&#233;ment dans un graphe objet. Il faut se former et s'informer, le web rec&#232;le de ressources sur GWT et de nombreuses soci&#233;t&#233;s proposent d'ores et d&#233;j&#224; leurs services, comme DNG Consulting. </p>  <p>Petite pub au passage pour <a href="http://www.objectif-informatique.fr/weblog/index.php?2010/05/26/75-prochaine-expertise-objectif-le-15-juin-sur-le-theme-gwt-2">l'&#233;v&#232;nement GWT 2</a> organis&#233; le 15 Juin par Objectif Informatique sur Paris. C'est entre midi et deux et cela se passe &#224; Paris. J'ai ou&#239; dire que quelques livres Prog GWT 2 y seraient distribu&#233;s.. </p>  <p>Au plaisir</p>  <p><a href="http://www.dng-consulting.com/blogs/media/users/sami/ProgrammationGWT2enebook_525/image_3.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.dng-consulting.com/blogs/media/users/sami/ProgrammationGWT2enebook_525/image.png" width="368" height="203" /></a></p><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/06/11/programmation-gwt-2-en-e-book?blog=1#comments</comments>
		</item>
				<item>
			<title>Ce que nous r&#233;serve GWT 2.1</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/05/14/ce-que-nous-raeacute-serve-gwt-2-1?blog=1</link>
			<pubDate>Thu, 13 May 2010 22:52:37 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">205@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Le 19 Mai prochain aura lieu Google IO, la messe annuelle des d&amp;#233;veloppeurs Google. C'est l'&amp;#233;v&amp;#232;nement majeur du monde IT pour tout ce qui tourne autour de technologies Google. Il &amp;#233;tait pr&amp;#233;vu que je fasse le voyage mais comme bien souvent, mon planning du moment m'a rattrap&amp;#233;. Pour marquer le coup, je voulais quand m&amp;#234;me vous faire partager les quelques nouveaut&amp;#233;s qui seront annonc&amp;#233;es&amp;#160; Mercredi prochain. Notez que je n'ai bien &amp;#233;videmment aucune information secr&amp;#232;te &amp;#224; vous d&amp;#233;voiler ici (m&amp;#234;me s'il y en aura !), ce billet r&amp;#233;sume simplement les six mois d'activit&amp;#233; observ&amp;#233; sur le code source de GWT.&lt;/p&gt;  &lt;p&gt;Le mot-cl&amp;#233; &amp;#224; retenir pour GWT 2.1 est Bikeshed. Bikeshed est le nom de code d'un nouveau framework graphique sur lequel planche l'&amp;#233;quipe de Bruce. Pourquoi ce nom ? Bikeshed n'a pas grand chose &amp;#224; voir avec les v&amp;#233;los, en r&amp;#233;alit&amp;#233; c'est un terme emprunt&amp;#233; &amp;#224; l'historien Parkinson. Le Bikesheding est une loi qui exprime le fait que les sujets dont on discute longtemps sont ceux qui sont les plus triviaux alors que peu de personnes peuvent &amp;#233;changer et exprimer une opinion sur un sujet techniquement complexe (comme celui d'un r&amp;#233;acteur nucl&amp;#233;aire). Tout le monde peut discuter ind&amp;#233;finiment de la couleur d'un abri &amp;#224; v&amp;#233;lo (BikeShed) et faire entendre son avis. &lt;/p&gt;  &lt;p&gt;Bikeshed s'appuie sur plusieurs briques fondamentales :&lt;/p&gt;  &lt;p&gt;- De nouveaux composants graphiques&lt;/p&gt;  &lt;p&gt;- Un framework de Validation&lt;/p&gt;  &lt;p&gt;- Un framework (RequestFactory) permettant de synchroniser des entit&amp;#233;s serveur suivant une philosophie REST/JSon &lt;/p&gt;  &lt;p&gt;- Un framework de Data-Binding (appel&amp;#233; aussi ValueStore)&lt;/p&gt;  &lt;p&gt;- Un framework gwt-collections&lt;/p&gt;  &lt;p&gt;Au jour d'aujourd'hui, je ne sais pas si GWT 2.1 sera annonc&amp;#233; &amp;#224; Google IO et quelle sera la place laiss&amp;#233;e &amp;#224; Bikeshed. Vu la maturit&amp;#233; du code disponible sur le trunk, Bikeshed n'est qu'un embryon de framework. En revanche, ce qui est s&amp;#251;r, c'est qu'il repr&amp;#233;sente une brique majeure dans la strat&amp;#233;gie GWT de Google pour les prochains mois. &lt;/p&gt;  &lt;h2&gt;Nouveaux composants graphiques&lt;/h2&gt;  &lt;p&gt;Il y a encore peu d'information disponible sur les nouveaux composants graphiques. La fameuse grille pagin&amp;#233;e est belle est bien l&amp;#224;. Elle se pr&amp;#233;nomme PagingTableListView. Elle n'a plus grand chose &amp;#224; voir avec la fameuse grille du projet d'incubation. Cette fois, les ent&amp;#234;tes sont personnalisables et un mod&amp;#232;le (ListView) fait son apparition. &lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;public class PagingTableListView&amp;lt;T&amp;gt; extends Widget implements ListView&amp;lt;T&amp;gt; { ...&amp;#160; }&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;PagingTableListView&amp;lt;StockQuote&amp;gt; favorite = new PagingTableListView&amp;lt;StockQuote&amp;gt;(10);     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; favoritesListViewAdapter.addView(favorite); &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160;&amp;#160;&amp;#160; favorite.addColumn(Columns.tickerColumn, &amp;quot;ticker&amp;quot; );     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; favorite.addColumn(Columns.priceColumn, &amp;quot;price&amp;quot; );      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; favorite.addColumn(Columns.profitLossColumn, &amp;quot;profit/loss&amp;quot; );&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;On trouve &amp;#233;galement de nouveaux composants de type arbre (SideBySideTreeView et StandardTreeView), un TreeView est &amp;#233;galement associ&amp;#233; &amp;#224; un mod&amp;#232;le. Plus g&amp;#233;n&amp;#233;ralement, la plupart des nouveaux composants arborent d&amp;#233;sormais un mod&amp;#232;le et surtout, autre nouveaut&amp;#233;, un client bundle pour la gestion des ressources. Voici une partie du code source de la classe TreeView :&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;public abstract class TreeView extends Composite { &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160; /**     &lt;br /&gt;&amp;#160;&amp;#160; * A ClientBundle that provides images for this widget.      &lt;br /&gt;&amp;#160;&amp;#160; */      &lt;br /&gt;&amp;#160; public static interface Resources extends ClientBundle { &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160;&amp;#160;&amp;#160; /**     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; * An image indicating a closed branch.      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ImageResource treeClosed(); &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160;&amp;#160;&amp;#160; /**     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; * An image indicating an open branch.      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ImageResource treeOpen();      &lt;br /&gt;&amp;#160; } &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160; private static final Resources DEFAULT_RESOURCES = GWT.create(Resources.class);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;{...}&lt;/font&gt;&lt;/p&gt;  &lt;h2&gt;Framework de validation&lt;/h2&gt;  &lt;p&gt;Un framework de validation est &amp;#233;galement en pr&amp;#233;paration. Pour l'instant on ne peut pas dire qu'il soit r&amp;#233;ellement industriel, on trouve simplement une ou deux classes, une sorte de brouillon de prototype.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_thumb.png&quot; width=&quot;244&quot; height=&quot;114&quot; /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;h2&gt;Gestion du data binding&lt;/h2&gt;  &lt;p&gt;Pour ceux qui ont l'habitude d'utiliser du DataBinding dans les framework traditionnel (beans-binding, Flex, Silverlight, .), oubliez tout, GWT a cherch&amp;#233; &amp;#224; innover sur ce plan. Pour faire court, le RequestFactory est un framework permettant de cr&amp;#233;er des requ&amp;#234;tes REST associ&amp;#233; &amp;#224; un ValueStore, une sorte de m&amp;#233;canisme observer/observable permettant de synchroniser l'&amp;#233;tat d'entit&amp;#233;s (JPA) serveur sur le client. Sur le papier, le projet est tr&amp;#232;s ambitieux. Dans la pratique, tout cela est encore loin d'&amp;#234;tre simple. Il manque encore tout l'outillage destin&amp;#233; &amp;#224; g&amp;#233;n&amp;#233;rer la tuyauterie aujourd'hui encore trop visible. Chaque objet du domaine, par exemple Facture ou Client poss&amp;#232;de une repr&amp;#233;sentation cliente (FactureRequest) et des classes de requ&amp;#234;tes (AllFacturesRequester) :&lt;/p&gt;  &lt;p&gt;Ex :&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;public final class AllEmployeesRequester implements ValuesListView.Delegate {     &lt;br /&gt;&amp;#160; private final ValuesListViewTable&amp;lt;EmployeeRecord&amp;gt; view;      &lt;br /&gt;&amp;#160; private final ExpensesRequestFactory requests; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160; public AllEmployeesRequester(ExpensesRequestFactory requests,     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ValuesListViewTable&amp;lt;EmployeeRecord&amp;gt; newView) {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; this.view = newView;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; this.requests = requests;      &lt;br /&gt;&amp;#160; } &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Courier New&quot;&gt;&amp;#160; public void onRangeChanged(int start, int length) {     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; requests.employeeRequest().findAllEmployees().forProperties(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; view.getProperties()).to(view).fire();      &lt;br /&gt;&amp;#160; }      &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Le moins qu'on puisse dire c'est qu'il est encore trop t&amp;#244;t pour s'avancer sur une quelconque maturit&amp;#233; de ce framework. A titre personnel, je le trouve (et j'ai eu l'occasion d'en parler avec Ray Ryan &lt;a href=&quot;http://code.google.com/p/google-web-toolkit/wiki/ValueStoreAndRequestFactory&quot;&gt;ici&lt;/a&gt;, &amp;#224; l'origine du projet) trop ambitieux, sur&amp;#233;quip&amp;#233; et incontestablement trop compliqu&amp;#233;. Un framework de databinding doit rester r&amp;#233;serv&amp;#233; au p&amp;#233;rim&amp;#232;tre du poste client (il existe d'autres outils pour synchroniser des entit&amp;#233;s serveur) et se r&amp;#233;sumer &amp;#224; connecter deux propri&amp;#233;t&amp;#233;s. Ici, il faut compter pas moins de cinq classes par objet du domaine, m&amp;#234;me avec un g&amp;#233;n&amp;#233;rateur de code JPA, c'est beaucoup trop.&lt;/p&gt;  &lt;p&gt;Malgr&amp;#233; tout, il faut noter la richesse des fonctionnalit&amp;#233;s propos&amp;#233;es ; gestion des deltas en cas de modification d'une liste, gestion des &amp;#233;v&amp;#232;nements (deleted, modified,..), gestion de la vue ma&amp;#238;tre/d&amp;#233;tail, etc . &lt;/p&gt;  &lt;h2&gt;Collections&lt;/h2&gt;  &lt;p&gt;Bikeshed introduit &amp;#233;galement un petit framework de Collections (tableaux immuables et muables, .). &lt;/p&gt;  &lt;h2&gt;Les d&amp;#233;mos&lt;/h2&gt;  &lt;p&gt;Il existe sur le trunk plusieurs d&amp;#233;mos (elles seront s&amp;#251;rement pr&amp;#233;sent&amp;#233;es lors de Google IO) destin&amp;#233;es &amp;#224; valoriser Bikeshed. J'avoue avoir pens&amp;#233; &amp;#224; les d&amp;#233;ployer sur AppEngine mais vu la maturit&amp;#233; du code (tout cela rel&amp;#232;ve du prototype encore) et la pauvret&amp;#233; des styles (le graphisme n'est d&amp;#233;cid&amp;#233;ment pas le point fort des Gwiters), cela n'aurait pas &amp;#233;t&amp;#233; tr&amp;#232;s fair play. Voici malgr&amp;#233; tout un petit screenshot de l'application Day Trader, on peut y apercevoir la nouvelle grille. &lt;/p&gt;  &lt;p&gt;Pour le reste, vous en saurez beaucoup plus lors de Google IO, qui s'annonce tr&amp;#232;s excitant !. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_3.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_thumb_3.png&quot; width=&quot;318&quot; height=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Le 19 Mai prochain aura lieu Google IO, la messe annuelle des d&#233;veloppeurs Google. C'est l'&#233;v&#232;nement majeur du monde IT pour tout ce qui tourne autour de technologies Google. Il &#233;tait pr&#233;vu que je fasse le voyage mais comme bien souvent, mon planning du moment m'a rattrap&#233;. Pour marquer le coup, je voulais quand m&#234;me vous faire partager les quelques nouveaut&#233;s qui seront annonc&#233;es&#160; Mercredi prochain. Notez que je n'ai bien &#233;videmment aucune information secr&#232;te &#224; vous d&#233;voiler ici (m&#234;me s'il y en aura !), ce billet r&#233;sume simplement les six mois d'activit&#233; observ&#233; sur le code source de GWT.</p>  <p>Le mot-cl&#233; &#224; retenir pour GWT 2.1 est Bikeshed. Bikeshed est le nom de code d'un nouveau framework graphique sur lequel planche l'&#233;quipe de Bruce. Pourquoi ce nom ? Bikeshed n'a pas grand chose &#224; voir avec les v&#233;los, en r&#233;alit&#233; c'est un terme emprunt&#233; &#224; l'historien Parkinson. Le Bikesheding est une loi qui exprime le fait que les sujets dont on discute longtemps sont ceux qui sont les plus triviaux alors que peu de personnes peuvent &#233;changer et exprimer une opinion sur un sujet techniquement complexe (comme celui d'un r&#233;acteur nucl&#233;aire). Tout le monde peut discuter ind&#233;finiment de la couleur d'un abri &#224; v&#233;lo (BikeShed) et faire entendre son avis. </p>  <p>Bikeshed s'appuie sur plusieurs briques fondamentales :</p>  <p>- De nouveaux composants graphiques</p>  <p>- Un framework de Validation</p>  <p>- Un framework (RequestFactory) permettant de synchroniser des entit&#233;s serveur suivant une philosophie REST/JSon </p>  <p>- Un framework de Data-Binding (appel&#233; aussi ValueStore)</p>  <p>- Un framework gwt-collections</p>  <p>Au jour d'aujourd'hui, je ne sais pas si GWT 2.1 sera annonc&#233; &#224; Google IO et quelle sera la place laiss&#233;e &#224; Bikeshed. Vu la maturit&#233; du code disponible sur le trunk, Bikeshed n'est qu'un embryon de framework. En revanche, ce qui est s&#251;r, c'est qu'il repr&#233;sente une brique majeure dans la strat&#233;gie GWT de Google pour les prochains mois. </p>  <h2>Nouveaux composants graphiques</h2>  <p>Il y a encore peu d'information disponible sur les nouveaux composants graphiques. La fameuse grille pagin&#233;e est belle est bien l&#224;. Elle se pr&#233;nomme PagingTableListView. Elle n'a plus grand chose &#224; voir avec la fameuse grille du projet d'incubation. Cette fois, les ent&#234;tes sont personnalisables et un mod&#232;le (ListView) fait son apparition. </p>  <p><font face="Courier New">public class PagingTableListView&lt;T&gt; extends Widget implements ListView&lt;T&gt; { ...&#160; }</font></p>  <p><font face="Courier New">PagingTableListView&lt;StockQuote&gt; favorite = new PagingTableListView&lt;StockQuote&gt;(10);     <br />&#160;&#160;&#160; favoritesListViewAdapter.addView(favorite); </font></p>  <p><font face="Courier New">&#160;&#160;&#160; favorite.addColumn(Columns.tickerColumn, &quot;ticker&quot; );     <br />&#160;&#160;&#160; favorite.addColumn(Columns.priceColumn, &quot;price&quot; );      <br />&#160;&#160;&#160;&#160;&#160; favorite.addColumn(Columns.profitLossColumn, &quot;profit/loss&quot; );</font></p>  <p>On trouve &#233;galement de nouveaux composants de type arbre (SideBySideTreeView et StandardTreeView), un TreeView est &#233;galement associ&#233; &#224; un mod&#232;le. Plus g&#233;n&#233;ralement, la plupart des nouveaux composants arborent d&#233;sormais un mod&#232;le et surtout, autre nouveaut&#233;, un client bundle pour la gestion des ressources. Voici une partie du code source de la classe TreeView :</p>  <p><font face="Courier New">public abstract class TreeView extends Composite { </font></p>  <p><font face="Courier New">&#160; /**     <br />&#160;&#160; * A ClientBundle that provides images for this widget.      <br />&#160;&#160; */      <br />&#160; public static interface Resources extends ClientBundle { </font></p>  <p><font face="Courier New">&#160;&#160;&#160; /**     <br />&#160;&#160;&#160;&#160; * An image indicating a closed branch.      <br />&#160;&#160;&#160;&#160; */      <br />&#160;&#160;&#160; ImageResource treeClosed(); </font></p>  <p><font face="Courier New">&#160;&#160;&#160; /**     <br />&#160;&#160;&#160;&#160; * An image indicating an open branch.      <br />&#160;&#160;&#160;&#160; */      <br />&#160;&#160;&#160; ImageResource treeOpen();      <br />&#160; } </font></p>  <p><font face="Courier New">&#160; private static final Resources DEFAULT_RESOURCES = GWT.create(Resources.class);</font></p>  <p><font face="Courier New">{...}</font></p>  <h2>Framework de validation</h2>  <p>Un framework de validation est &#233;galement en pr&#233;paration. Pour l'instant on ne peut pas dire qu'il soit r&#233;ellement industriel, on trouve simplement une ou deux classes, une sorte de brouillon de prototype.</p>  <p><a href="http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_thumb.png" width="244" height="114" /></a>&#160; </p>  <h2>Gestion du data binding</h2>  <p>Pour ceux qui ont l'habitude d'utiliser du DataBinding dans les framework traditionnel (beans-binding, Flex, Silverlight, .), oubliez tout, GWT a cherch&#233; &#224; innover sur ce plan. Pour faire court, le RequestFactory est un framework permettant de cr&#233;er des requ&#234;tes REST associ&#233; &#224; un ValueStore, une sorte de m&#233;canisme observer/observable permettant de synchroniser l'&#233;tat d'entit&#233;s (JPA) serveur sur le client. Sur le papier, le projet est tr&#232;s ambitieux. Dans la pratique, tout cela est encore loin d'&#234;tre simple. Il manque encore tout l'outillage destin&#233; &#224; g&#233;n&#233;rer la tuyauterie aujourd'hui encore trop visible. Chaque objet du domaine, par exemple Facture ou Client poss&#232;de une repr&#233;sentation cliente (FactureRequest) et des classes de requ&#234;tes (AllFacturesRequester) :</p>  <p>Ex :</p>  <p><font face="Courier New">public final class AllEmployeesRequester implements ValuesListView.Delegate {     <br />&#160; private final ValuesListViewTable&lt;EmployeeRecord&gt; view;      <br />&#160; private final ExpensesRequestFactory requests; </font></p>  <p><font face="Courier New">&#160; public AllEmployeesRequester(ExpensesRequestFactory requests,     <br />&#160;&#160;&#160;&#160;&#160; ValuesListViewTable&lt;EmployeeRecord&gt; newView) {      <br />&#160;&#160;&#160; this.view = newView;      <br />&#160;&#160;&#160; this.requests = requests;      <br />&#160; } </font></p>  <p><font face="Courier New">&#160; public void onRangeChanged(int start, int length) {     <br />&#160;&#160;&#160; requests.employeeRequest().findAllEmployees().forProperties(      <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; view.getProperties()).to(view).fire();      <br />&#160; }      <br />}</font></p>  <p>Le moins qu'on puisse dire c'est qu'il est encore trop t&#244;t pour s'avancer sur une quelconque maturit&#233; de ce framework. A titre personnel, je le trouve (et j'ai eu l'occasion d'en parler avec Ray Ryan <a href="http://code.google.com/p/google-web-toolkit/wiki/ValueStoreAndRequestFactory">ici</a>, &#224; l'origine du projet) trop ambitieux, sur&#233;quip&#233; et incontestablement trop compliqu&#233;. Un framework de databinding doit rester r&#233;serv&#233; au p&#233;rim&#232;tre du poste client (il existe d'autres outils pour synchroniser des entit&#233;s serveur) et se r&#233;sumer &#224; connecter deux propri&#233;t&#233;s. Ici, il faut compter pas moins de cinq classes par objet du domaine, m&#234;me avec un g&#233;n&#233;rateur de code JPA, c'est beaucoup trop.</p>  <p>Malgr&#233; tout, il faut noter la richesse des fonctionnalit&#233;s propos&#233;es ; gestion des deltas en cas de modification d'une liste, gestion des &#233;v&#232;nements (deleted, modified,..), gestion de la vue ma&#238;tre/d&#233;tail, etc . </p>  <h2>Collections</h2>  <p>Bikeshed introduit &#233;galement un petit framework de Collections (tableaux immuables et muables, .). </p>  <h2>Les d&#233;mos</h2>  <p>Il existe sur le trunk plusieurs d&#233;mos (elles seront s&#251;rement pr&#233;sent&#233;es lors de Google IO) destin&#233;es &#224; valoriser Bikeshed. J'avoue avoir pens&#233; &#224; les d&#233;ployer sur AppEngine mais vu la maturit&#233; du code (tout cela rel&#232;ve du prototype encore) et la pauvret&#233; des styles (le graphisme n'est d&#233;cid&#233;ment pas le point fort des Gwiters), cela n'aurait pas &#233;t&#233; tr&#232;s fair play. Voici malgr&#233; tout un petit screenshot de l'application Day Trader, on peut y apercevoir la nouvelle grille. </p>  <p>Pour le reste, vous en saurez beaucoup plus lors de Google IO, qui s'annonce tr&#232;s excitant !. </p>  <p><a href="http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_3.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.dng-consulting.com/blogs/media/users/sami/CequenousrserveGWT2.1_B75/image_thumb_3.png" width="318" height="213" /></a></p><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/05/14/ce-que-nous-raeacute-serve-gwt-2-1?blog=1#comments</comments>
		</item>
				<item>
			<title>Quelques news &#8230;</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/05/02/quelques-news-ahellip?blog=1</link>
			<pubDate>Sun, 02 May 2010 21:40:27 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">News</category>			<guid isPermaLink="false">204@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;C'est inadmissible. Voil&amp;#224; plus de deux mois que ce blog n'avait &amp;#233;t&amp;#233; aliment&amp;#233;. Au point de recevoir des mails me demandant d'arr&amp;#234;ter de travailler pour y consacrer quelques minutes ! Plus s&amp;#233;rieusement, je l'ai toujours dis, le plus dur avec un blog est de durer. A vouloir courir trop de li&amp;#232;vres communicant &amp;#224; la fois on finit par s'essouffler. M&amp;#234;me &lt;a href=&quot;http://www.dotnetguru.org&quot;&gt;DotNetGuru.org&lt;/a&gt; n'&amp;#233;chappe pas &amp;#224; cette mise en veille. Au passage, l'air de rien, ce site a tout de m&amp;#234;me f&amp;#234;t&amp;#233; le mois dernier ses 9 ans. Comme dirait un c&amp;#233;l&amp;#232;bre pr&amp;#233;sident retrait&amp;#233; &quot;putain, 9 ans !&quot;. &lt;/p&gt;  &lt;p&gt;Bref, vous l'aurez donc remarqu&amp;#233; par vous m&amp;#234;me, ces derni&amp;#232;res semaines ont &amp;#233;t&amp;#233; plut&amp;#244;t charg&amp;#233;es pour DNG Consulting. La soci&amp;#233;t&amp;#233; s'est agrandit, depuis d&amp;#233;but Avril nous sommes dans de nouveaux locaux flambants neufs &amp;#224; quelques encablures de nos pr&amp;#233;c&amp;#233;dents bureaux. Et c&amp;#244;t&amp;#233; projets, les activit&amp;#233;s de conseil, formation et forfait se portent plut&amp;#244;t bien. Mais ce n'est pas la seule raison de ce silence. Parfois, Il faut savoir se taire, prendre un peu de recul et se ressourcer techniquement sur le terrain. J'esp&amp;#232;re tr&amp;#232;s bient&amp;#244;t vous faire quelques retours d'exp&amp;#233;rience et commenter l'actualit&amp;#233;, plut&amp;#244;t riche en ce moment. Parmi les technologies sur lesquelles nous travaillons en ce moment, Java et .NET occupent &amp;#233;videmment une place de choix, mais surtout les nouveaux framework qui les accompagnent. &lt;/p&gt;  &lt;p&gt;Apr&amp;#232;s avoir consacr&amp;#233; une ann&amp;#233;e enti&amp;#232;re au d&amp;#233;veloppement d'EJB 3 en 2008 avec JBoss 5 (b&amp;#233;ta) Embedded et OpenEJB, pr&amp;#233;curseurs en la mati&amp;#232;re, j'ai &amp;#233;t&amp;#233; ravi de voir que, ce qui &amp;#224; l'&amp;#233;poque relevait de l'exp&amp;#233;rimentation de laboratoire, &amp;#233;tait devenu un standard. &lt;a href=&quot;https://glassfish.dev.java.net/&quot;&gt;Glassfish V3&lt;/a&gt; a depuis lui aussi adopt&amp;#233; la mode Embeddable Container avec des r&amp;#233;sultats remarquables. Nous l'utilisons aux c&amp;#244;t&amp;#233; de GWT pour nos projets AJAX et la productivit&amp;#233; du d&amp;#233;veloppeur est incroyable. Au-del&amp;#224; de Glassfish, c'est aussi son architecture interne qui nous a s&amp;#233;duits. On &amp;#233;voque un peu partout les pr&amp;#233;misses de la norme HTML 5, les &lt;a href=&quot;http://www.whatwg.org/specs/web-workers/current-work/&quot;&gt;WebWorkers&lt;/a&gt; et les nouveaux modes de communication entre navigateur http et serveurs web. La norme &lt;a href=&quot;http://jcp.org/en/jsr/detail?id=315&quot;&gt;Servlet 3.0&lt;/a&gt; ajoute les Threads Asynchrone qui s'appuient entre autre sur le principe des continuations pour arr&amp;#234;ter et suspendre une requ&amp;#234;te http en cours d'ex&amp;#233;cution. Pour des applications gourmandes en Push, rien de tel qu'un &lt;a href=&quot;https://grizzly.dev.java.net/&quot;&gt;Grizzly&lt;/a&gt; int&amp;#233;gr&amp;#233; dans Glassfish. Peu de serveurs d'application propose aujourd'hui une pile aussi riche. Et je ne vous parle pas du &lt;a href=&quot;https://atmosphere.dev.java.net/&quot;&gt;framework Atmosphere&lt;/a&gt; de &lt;a href=&quot;http://jfarcand.wordpress.com/&quot;&gt;Jean-Fran&amp;#231;ois Arcand&lt;/a&gt; avec qui j'ai eu l'occasion de m'entretenir r&amp;#233;cemment. Le futur du web se profile aussi parmi ses frameworks. Plus performants, plus robustes, supportant le mode full-duplex, multiplex&amp;#233;s et optimis&amp;#233;s pour la mont&amp;#233;e en charge et les &amp;#233;changes intensifs entre client et serveur. Le d&amp;#233;veloppement Web avec GWT 2, Glassfish V3 Embedded (en mode-dev) et JPA reste ce qui a de mieux sur le march&amp;#233; Java aujourd'hui. &lt;/p&gt;  &lt;p&gt;Autre sujet sur lequel j'esp&amp;#232;re avoir le temps de formaliser, les progr&amp;#232;s de .NET depuis la V4 et VS 2010. Je ne me lasse pas de cet IDE. Plus je l'utilise et plus je me dis qu'Eclipse va avoir du pain sur la planche pour combler son retard sur la partie graphique. Attention, je ne parle pas des dizaines de &amp;#171; petites &amp;#187; fonctionnalit&amp;#233;s qui font la richesse d'Eclipse et que VS 2010 ne poss&amp;#232;de pas toujours. Mais plut&amp;#244;t de la couche vectorielle que WPF a apport&amp;#233; dans VS. Il faut &amp;#234;tre lucide, les IDE de demain seront vectoriels. Quand on voit la popularit&amp;#233; grandissante de clients riches comme WPF et Flash, on a du mal &amp;#224; comprendre pourquoi Eclipse s'appuie encore sur ce mammouth &amp;#224; base de bitmap Win32 qu'est &lt;a href=&quot;http://www.eclipse.org/swt/&quot;&gt;SWT&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Pour l'anecdote, j'ai pris l'habitude d'utiliser (comme dans un navigateur) la roulette et la touche &amp;#171; Ctrl &amp;#187; pour augmenter la police de caract&amp;#232;res sous VS. Sous Eclipse, il ne faut pas moins de 7 clicks : Window--&amp;gt; Pr&amp;#233;f&amp;#233;rences--&amp;gt; G&amp;#233;n&amp;#233;ral--&amp;gt; Apparence--&amp;gt; Fonts--&amp;gt; Edit . Et encore, je n'ai pas la preview ! Lorsqu'on est en mode WYSIWYG dans un concepteur graphique, rien de tel que le vectoriel pour agrandir certaines zones de formulaire. &lt;/p&gt;  &lt;p&gt;Je reviendrais tr&amp;#232;s prochainement sur l'actualit&amp;#233; de GWT (qui &amp;#233;volue toujours dans le bon sens), du &lt;a href=&quot;http://www.amazon.fr/gp/product/2212125690/ref=s9_qps_gw_ir04?pf_rd_m=A1X6FK5RDHNB96&amp;amp;pf_rd_s=center-5&amp;amp;pf_rd_r=19YX52G2K4VAAQ2TPEGF&amp;amp;pf_rd_t=101&amp;amp;pf_rd_p=463375653&amp;amp;pf_rd_i=405320&quot;&gt;livre&lt;/a&gt; (merci mille fois &amp;#224; ceux qui prennent la peine de m'envoyer un petit mail d'encouragement) et des nouveaux cours que nous d&amp;#233;veloppons actuellement &amp;#224; notre catalogue.&lt;/p&gt;  &lt;p&gt;Stay Tuned &lt;/p&gt;  &lt;h6&gt;Billet r&amp;#233;dig&amp;#233; par Sami Jaber&lt;/h6&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>C'est inadmissible. Voil&#224; plus de deux mois que ce blog n'avait &#233;t&#233; aliment&#233;. Au point de recevoir des mails me demandant d'arr&#234;ter de travailler pour y consacrer quelques minutes ! Plus s&#233;rieusement, je l'ai toujours dis, le plus dur avec un blog est de durer. A vouloir courir trop de li&#232;vres communicant &#224; la fois on finit par s'essouffler. M&#234;me <a href="http://www.dotnetguru.org">DotNetGuru.org</a> n'&#233;chappe pas &#224; cette mise en veille. Au passage, l'air de rien, ce site a tout de m&#234;me f&#234;t&#233; le mois dernier ses 9 ans. Comme dirait un c&#233;l&#232;bre pr&#233;sident retrait&#233; "putain, 9 ans !". </p>  <p>Bref, vous l'aurez donc remarqu&#233; par vous m&#234;me, ces derni&#232;res semaines ont &#233;t&#233; plut&#244;t charg&#233;es pour DNG Consulting. La soci&#233;t&#233; s'est agrandit, depuis d&#233;but Avril nous sommes dans de nouveaux locaux flambants neufs &#224; quelques encablures de nos pr&#233;c&#233;dents bureaux. Et c&#244;t&#233; projets, les activit&#233;s de conseil, formation et forfait se portent plut&#244;t bien. Mais ce n'est pas la seule raison de ce silence. Parfois, Il faut savoir se taire, prendre un peu de recul et se ressourcer techniquement sur le terrain. J'esp&#232;re tr&#232;s bient&#244;t vous faire quelques retours d'exp&#233;rience et commenter l'actualit&#233;, plut&#244;t riche en ce moment. Parmi les technologies sur lesquelles nous travaillons en ce moment, Java et .NET occupent &#233;videmment une place de choix, mais surtout les nouveaux framework qui les accompagnent. </p>  <p>Apr&#232;s avoir consacr&#233; une ann&#233;e enti&#232;re au d&#233;veloppement d'EJB 3 en 2008 avec JBoss 5 (b&#233;ta) Embedded et OpenEJB, pr&#233;curseurs en la mati&#232;re, j'ai &#233;t&#233; ravi de voir que, ce qui &#224; l'&#233;poque relevait de l'exp&#233;rimentation de laboratoire, &#233;tait devenu un standard. <a href="https://glassfish.dev.java.net/">Glassfish V3</a> a depuis lui aussi adopt&#233; la mode Embeddable Container avec des r&#233;sultats remarquables. Nous l'utilisons aux c&#244;t&#233; de GWT pour nos projets AJAX et la productivit&#233; du d&#233;veloppeur est incroyable. Au-del&#224; de Glassfish, c'est aussi son architecture interne qui nous a s&#233;duits. On &#233;voque un peu partout les pr&#233;misses de la norme HTML 5, les <a href="http://www.whatwg.org/specs/web-workers/current-work/">WebWorkers</a> et les nouveaux modes de communication entre navigateur http et serveurs web. La norme <a href="http://jcp.org/en/jsr/detail?id=315">Servlet 3.0</a> ajoute les Threads Asynchrone qui s'appuient entre autre sur le principe des continuations pour arr&#234;ter et suspendre une requ&#234;te http en cours d'ex&#233;cution. Pour des applications gourmandes en Push, rien de tel qu'un <a href="https://grizzly.dev.java.net/">Grizzly</a> int&#233;gr&#233; dans Glassfish. Peu de serveurs d'application propose aujourd'hui une pile aussi riche. Et je ne vous parle pas du <a href="https://atmosphere.dev.java.net/">framework Atmosphere</a> de <a href="http://jfarcand.wordpress.com/">Jean-Fran&#231;ois Arcand</a> avec qui j'ai eu l'occasion de m'entretenir r&#233;cemment. Le futur du web se profile aussi parmi ses frameworks. Plus performants, plus robustes, supportant le mode full-duplex, multiplex&#233;s et optimis&#233;s pour la mont&#233;e en charge et les &#233;changes intensifs entre client et serveur. Le d&#233;veloppement Web avec GWT 2, Glassfish V3 Embedded (en mode-dev) et JPA reste ce qui a de mieux sur le march&#233; Java aujourd'hui. </p>  <p>Autre sujet sur lequel j'esp&#232;re avoir le temps de formaliser, les progr&#232;s de .NET depuis la V4 et VS 2010. Je ne me lasse pas de cet IDE. Plus je l'utilise et plus je me dis qu'Eclipse va avoir du pain sur la planche pour combler son retard sur la partie graphique. Attention, je ne parle pas des dizaines de &#171; petites &#187; fonctionnalit&#233;s qui font la richesse d'Eclipse et que VS 2010 ne poss&#232;de pas toujours. Mais plut&#244;t de la couche vectorielle que WPF a apport&#233; dans VS. Il faut &#234;tre lucide, les IDE de demain seront vectoriels. Quand on voit la popularit&#233; grandissante de clients riches comme WPF et Flash, on a du mal &#224; comprendre pourquoi Eclipse s'appuie encore sur ce mammouth &#224; base de bitmap Win32 qu'est <a href="http://www.eclipse.org/swt/">SWT</a>. </p>  <p>Pour l'anecdote, j'ai pris l'habitude d'utiliser (comme dans un navigateur) la roulette et la touche &#171; Ctrl &#187; pour augmenter la police de caract&#232;res sous VS. Sous Eclipse, il ne faut pas moins de 7 clicks : Window--&gt; Pr&#233;f&#233;rences--&gt; G&#233;n&#233;ral--&gt; Apparence--&gt; Fonts--&gt; Edit . Et encore, je n'ai pas la preview ! Lorsqu'on est en mode WYSIWYG dans un concepteur graphique, rien de tel que le vectoriel pour agrandir certaines zones de formulaire. </p>  <p>Je reviendrais tr&#232;s prochainement sur l'actualit&#233; de GWT (qui &#233;volue toujours dans le bon sens), du <a href="http://www.amazon.fr/gp/product/2212125690/ref=s9_qps_gw_ir04?pf_rd_m=A1X6FK5RDHNB96&amp;pf_rd_s=center-5&amp;pf_rd_r=19YX52G2K4VAAQ2TPEGF&amp;pf_rd_t=101&amp;pf_rd_p=463375653&amp;pf_rd_i=405320">livre</a> (merci mille fois &#224; ceux qui prennent la peine de m'envoyer un petit mail d'encouragement) et des nouveaux cours que nous d&#233;veloppons actuellement &#224; notre catalogue.</p>  <p>Stay Tuned </p>  <h6>Billet r&#233;dig&#233; par Sami Jaber</h6><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/05/02/quelques-news-ahellip?blog=1#comments</comments>
		</item>
				<item>
			<title>GWT et les d&#233;veloppeurs .NET</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/02/26/gwt-et-les-daeacute-veloppeurs-net?blog=1</link>
			<pubDate>Fri, 26 Feb 2010 22:51:18 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">203@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;&lt;p&gt;Lionel Lask&amp;#233;, directeur innovation chez C2S, vient de publier un &lt;a href=&quot;http://7avoir.over-blog.com/article-tout-developpeur-doit-connaitre-gwt-45735888.html&quot;&gt;tr&amp;#232;s joli billet&lt;/a&gt; sur l'int&amp;#233;r&amp;#234;t de se pencher sur GWT lorsqu'on est d&amp;#233;veloppeur .NET. Pour &amp;#234;tre le premier d&amp;#233;fenseur de .NET lorsqu'il s'agit d'applications strat&amp;#233;giques et transactionnelles, il n'en reste pas moins que sur la partie Web AJAX, le framework de Microsoft reste encore trop d&amp;#233;pouill&amp;#233;. &lt;/p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/index.php/2010/02/26/gwt-et-les-daeacute-veloppeurs-net?blog=1#more203&quot;&gt;Lire la suite &amp;raquo;&lt;/a&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p><p>Lionel Lask&#233;, directeur innovation chez C2S, vient de publier un <a href="http://7avoir.over-blog.com/article-tout-developpeur-doit-connaitre-gwt-45735888.html">tr&#232;s joli billet</a> sur l'int&#233;r&#234;t de se pencher sur GWT lorsqu'on est d&#233;veloppeur .NET. Pour &#234;tre le premier d&#233;fenseur de .NET lorsqu'il s'agit d'applications strat&#233;giques et transactionnelles, il n'en reste pas moins que sur la partie Web AJAX, le framework de Microsoft reste encore trop d&#233;pouill&#233;. </p><a href="http://www.dng-consulting.com/blogs/index.php/2010/02/26/gwt-et-les-daeacute-veloppeurs-net?blog=1#more203">Lire la suite &raquo;</a><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/02/26/gwt-et-les-daeacute-veloppeurs-net?blog=1#comments</comments>
		</item>
				<item>
			<title>Marier les Overlays de GWT et REST</title>
			<link>http://www.dng-consulting.com/blogs/index.php/2010/02/21/marier-les-overlays-de-gwt-et-rest?blog=1</link>
			<pubDate>Sun, 21 Feb 2010 22:48:59 +0000</pubDate>			<dc:creator>sami</dc:creator>
			<category domain="main">GWT</category>			<guid isPermaLink="false">202@http://www.dng-consulting.com/blogs/</guid>
						<description>&lt;p&gt;Lorsqu'on d&amp;#233;veloppe en GWT, on dispose de la facilit&amp;#233; de d&amp;#233;veloppement Java pour g&amp;#233;n&amp;#233;rer notre HTML et JavaScript. Cependant, il arrive parfois qu'on ait besoin d'&amp;#233;crire quelques bouts de code en JavaScript. Ceci pour diverses raisons : on ne trouve pas les bons composants dans la biblioth&amp;#232;que de GWT, on veut r&amp;#233;cup&amp;#233;rer des biblioth&amp;#232;ques JavaScript existantes, etc.. c'est l&amp;#224; que le framework nous fournit une tr&amp;#232;s bonne API nomm&amp;#233; JSNI (pour JavaScript Native Interface). Elle n'est pas sans rappeler le m&amp;#233;canisme de son cousin JNI (Java Native Interface).&lt;/p&gt;  &lt;p&gt;&lt;p&gt;Cependant, et on le lit un peu partout, il n'est pas conseill&amp;#233; d'&amp;#233;crire de gros traitements en JSNI pour de tr&amp;#232;s bonnes raisons : &lt;/p&gt;&lt;a href=&quot;http://www.dng-consulting.com/blogs/index.php/2010/02/21/marier-les-overlays-de-gwt-et-rest?blog=1#more202&quot;&gt;Lire la suite &amp;raquo;&lt;/a&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;Powered by &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Lorsqu'on d&#233;veloppe en GWT, on dispose de la facilit&#233; de d&#233;veloppement Java pour g&#233;n&#233;rer notre HTML et JavaScript. Cependant, il arrive parfois qu'on ait besoin d'&#233;crire quelques bouts de code en JavaScript. Ceci pour diverses raisons : on ne trouve pas les bons composants dans la biblioth&#232;que de GWT, on veut r&#233;cup&#233;rer des biblioth&#232;ques JavaScript existantes, etc.. c'est l&#224; que le framework nous fournit une tr&#232;s bonne API nomm&#233; JSNI (pour JavaScript Native Interface). Elle n'est pas sans rappeler le m&#233;canisme de son cousin JNI (Java Native Interface).</p>  <p><p>Cependant, et on le lit un peu partout, il n'est pas conseill&#233; d'&#233;crire de gros traitements en JSNI pour de tr&#232;s bonnes raisons : </p><a href="http://www.dng-consulting.com/blogs/index.php/2010/02/21/marier-les-overlays-de-gwt-et-rest?blog=1#more202">Lire la suite &raquo;</a><div class="item_footer"><p><small>Powered by <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.dng-consulting.com/blogs/index.php/2010/02/21/marier-les-overlays-de-gwt-et-rest?blog=1#comments</comments>
		</item>
			</channel>
</rss>
