{"id":240,"date":"2007-05-19T15:00:26","date_gmt":"2007-05-19T13:00:26","guid":{"rendered":"http:\/\/www.oezratty.net\/wordpress\/2007\/silverlight-et-consors\/"},"modified":"2007-05-21T08:25:01","modified_gmt":"2007-05-21T06:25:01","slug":"silverlight-et-consors","status":"publish","type":"post","link":"https:\/\/www.oezratty.net\/wordpress\/2007\/silverlight-et-consors\/","title":{"rendered":"Silverlight et consors"},"content":{"rendered":"<p>Les annonces r\u00e9centes de Microsoft Silverlight, Adobe Apollo et des \u00e9volutions de Flex, tout comme celle de JavaFX de Sun donnent un peu le tournis dans le monde des &#8220;Rich Internet Applications&#8221;. Il y a de quoi y perdre son latin car ces technologies sont toutes concurrentes, mais elles pr\u00e9sentent des diff\u00e9rences certaines que leurs pr\u00e9sentations marketing ne permettent malheureusement pas d&#8217;identifier clairement.<\/p>\n<p>Les annonces s&#8217;appuient \u00e0 la fois sur les forces de leurs auteurs, et aussi de leurs faiblesses sur le march\u00e9 et de leurs ambitions pour les r\u00e9sorber. Tout en surfant sur la vague du Web riche, interactif&nbsp;et multim\u00e9dia.<\/p>\n<p>Pour faire simple:<\/p>\n<ul>\n<li><strong>Microsoft <\/strong>cherche \u00e0 s\u00e9duire les concepteurs et designers de sites Web qui sont f\u00e9rus de Flash, alors qu&#8217;ils ont d\u00e9j\u00e0 plut\u00f4t la cote avec les d\u00e9veloppeurs. Ils veulent se donner une image &#8220;multi-plate-forme&#8221; pour limiter leur image &#8220;propri\u00e9taire li\u00e9e \u00e0 Windows&#8221;. Et se positionnent nettement sur les contenus riches, surtout vid\u00e9o.\n<li><strong>Adobe <\/strong>cherche \u00e0 s\u00e9duire les d\u00e9veloppeurs en entreprise avec Flex et Apollo, des outils plus &#8220;s\u00e9rieux&#8221; que Flash.&nbsp;Avec une incursion discr\u00e8te dans le middleware serveur et une architecture de client riche.\n<li><strong>Sun <\/strong>pousse l&#8217;avantage multi-plate-forme de Java avec JavaFX, ciblant \u00e0 l&#8217;instar de Microsoft \u00e0 la fois les postes de travail, les mobiles, mais \u00e9galement les set-top-boxes. Mais avec la volont\u00e9 de simplifier le d\u00e9veloppement Java d&#8217;applications Internet riches.\n<li>L&#8217;<strong>open source <\/strong>reste cr\u00e9atif, mais quelque peu fragment\u00e9 et sans solution d&#8217;ensemble r\u00e9pondant aux besoins du &#8220;rich web&#8221;. Mais comme ils dominent le reste du web avec les solutions LAMP, ils sont tranquilles pour quelques temps.<\/li>\n<\/ul>\n<p>Je vais dans ce post tenter de d\u00e9cortiquer ces annonces en commen\u00e7ant par Microsoft.<\/p>\n<p><strong><u>Microsoft et Silverlight<\/u><\/strong><\/p>\n<p><a href=\"http:\/\/www.microsoft.com\/silverlight\/\">Silverlight<\/a> a \u00e9t\u00e9 annonc\u00e9 pendant la conf\u00e9rence MIX de Las Vegas de fin avril 2007. C&#8217;est une technologie de plug-in pour navigateur permettant d&#8217;ex\u00e9cuter des composants logiciels &#8220;riches&#8221; avec toutes sortes de contenus interactifs, notamment vid\u00e9o. Elle ne part pas de z\u00e9ro puisque c&#8217;est le nouveau nom donn\u00e9 \u00e0 ce qui \u00e9tait jusqu&#8217;\u00e0 pr\u00e9sent le WPF\/E (Windows Presentation Foundation \/ Everywhere) dont une version d&#8217;\u00e9valuation \u00e9tait sortie en d\u00e9cembre 2006.<\/p>\n<p>Silverlight&nbsp;pr\u00e9sente plusieurs caract\u00e9ristiques int\u00e9ressantes:<\/p>\n<ul>\n<li>C&#8217;est la mise en oeuvre de l&#8217;architecture <strong>.NET dans un plug-in <\/strong>pour navigateur Web avec l&#8217;incorporation des technologies que l&#8217;on retrouve dans .NET et dans Vista: le framework Windows Presentation Framework pour la cr\u00e9ation d&#8217;interfaces graphiques riches et dynamiques, le langage XAML pour la description en XML de ces interfaces, et le support du multilangage (dans la version 1.1 de Silverlight, la 1.0 se contentant de XAML et de JavaScript). C&#8217;est donc un bon moyen de promouvoir les interfaces de programmation de Vista au del\u00e0 de ce syst\u00e8me d&#8217;exploitation. Avec une caract\u00e9ristique qui semble faire la distinction avec les concurrents: une excellente rapidit\u00e9 d&#8217;ex\u00e9cution des applications.\n<li>C&#8217;est un composant adapt\u00e9 au multim\u00e9dia, tr\u00e8s <strong>puissant pour les interfaces anim\u00e9es et la vid\u00e9o<\/strong>, supportant la HD (720p) en streaming ou download.&nbsp;A ce titre, Silverlight devrait \u00eatre une technologie de choix pour les applications grand public de commerce \u00e9lectronique et de t\u00e9l\u00e9vision num\u00e9rique, sur PC comme sur set-top-box. Et aussi pour le march\u00e9 publicitaire, toujours \u00e0 la recherche de formats originaux et interactifs.&nbsp;Silverlight arrive \u00e0 point nomm\u00e9 alors que la vid\u00e9o envahi litt\u00e9ralement le Web. La technologie repose sur le codec SMTPE VC1 (Windows Media Video) dont la performance en streaming est probablement la meilleure du march\u00e9 (taux de compression, qualit\u00e9 d&#8217;image, charge de serveur).\n<li>Il remet au go\u00fbt du jour la notion de &#8220;<strong>client riche<\/strong>&#8220;. La nuance entre client riche et client l\u00e9ger est d&#8217;ailleurs de plus en plus t\u00e9nue, avec tous ces plug-ins popularis\u00e9s par Flash et autres players m\u00e9dia. C&#8217;est aussi la consolidation d&#8217;un web dont de nombreuses composantes sont et restent propri\u00e9taires. Microsoft parle de &#8220;Logiciel + service&#8221; et pas juste de &#8220;Software as a service&#8221;. C&#8217;est la traduction d&#8217;une r\u00e9alit\u00e9 simple: les solutions logicielles d&#8217;aujourd&#8217;hui qui exploitent Internet sont la combinaison de logiciels qui tournent sur votre ordinateur (fixe, portable, set-top-box, montre, whatever&#8230;) et de logiciels tournant sur des serveurs (qu&#8217;on appelle &#8220;services&#8221;). Bref, apr\u00e8s quelques contorsions s\u00e9mantiques, c&#8217;est le bon vieux concept du &#8220;client-serveur&#8221; qui survit aux g\u00e9n\u00e9rations technologiques. Microsoft se positionne d&#8217;ailleurs des deux c\u00f4t\u00e9s de la cha\u00eene de valeur avec tout ce qu&#8217;il faut du c\u00f4t\u00e9 client (Silverlight, Vista, clients riches, semi-riches, l\u00e9gers, etc) et du c\u00f4t\u00e9 services (ce que propose Live: Hotmail, Photos, Contacts, Virtual Earth, Search, authentification et le nouveau <a href=\"http:\/\/www.microsoft.com\/silverlight\/streaming.aspx\">Silverlight Streaming<\/a>, un service web de streaming vid\u00e9o avec 4 Go de stockage gratuit ).\n<li>Une <strong>offre tr\u00e8s int\u00e9gr\u00e9e <\/strong>d&#8217;outil de d\u00e9veloppement d&#8217;applications riches: Expression Studio qui comporte quatre composants (Expression Web pour la cr\u00e9ation d&#8217;applications Web en remplacement de FrontPage, Expression Blend pour la cr\u00e9ation d&#8217;applications desktop, Expression Design pour le dessin vectoriel et bitmap &#8211; r\u00e9sultat de l&#8217;acquisition de Creature House en 2003 et Expression Media pour l&#8217;encodage et la gestion des m\u00e9dias &#8211; issu de l&#8217;acquisition de iViews en 2006). Expression Studio peut \u00eatre <a href=\"http:\/\/www.microsoft.com\/Expression\/products\/download.aspx?key=studio\">\u00e9valu\u00e9 gratuitement<\/a> par brique. Cette int\u00e9gration suit un d\u00e9coupage fonctionnel par m\u00e9tier (d\u00e9veloppeur, designer, m\u00e9dia manager) reprenant une vision tr\u00e8s taylorienne de la conception de site Web riche. Mais l&#8217;approche a ses limites puisqu&#8217;Expression Studio ne supporte pas encore l&#8217;int\u00e9gration d&#8217;outils de gestion de version (CVS like). On se retrouve donc avec une approche du d\u00e9veloppement \u00e0 trois couches: m\u00e9dias\/contenus\/design, site web, et composants logiciels, ces derniers restant d\u00e9velopp\u00e9s avec Visual Studio. L&#8217;ergonomie, le look et la coh\u00e9rence de la suite Expression sont vraiment attirants, par comparaison \u00e0 ce que l&#8217;on trouve chez Adobe ou Sun qui reste tr\u00e8s aust\u00e8re (<em>cf exemple avec Blend ci-dessous<\/em>).<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" height=\"275\" src=\"http:\/\/www.monitor.si\/images\/novice\/slika\/2006_12_05_m_ms_expression_02.jpg\" width=\"369\"><\/p>\n<ul>\n<li>Une <strong>ouverture qui s&#8217;\u00e9toffe mais qui reste limit\u00e9e <\/strong>: le plug-in&nbsp;Silverlight fonctionne sous Windows (y compris Windows Mobile) et&nbsp;MacOS. Il supporte Internet Explorer, Firefox, Opera&nbsp;et Safari. Linux n&#8217;est pas au programme et ne le sera pas avant longtemps car Microsoft \u00e9vite de toucher \u00e0 ce syst\u00e8me par peur du c\u00f4t\u00e9 viral de la licence GPL (m\u00eame s&#8217;il a des offres qui touchent bien \u00e0 Linux notamment dans le domaine de la virtualisation). Microsoft s&#8217;appuiera donc sur le projet Mono men\u00e9 par Miguel Iquaza chez Novell pour faire fonctionner Silverlight sous Linux. Du c\u00f4t\u00e9 d\u00e9veloppement, Silverlight peut \u00eatre programm\u00e9 avec le tr\u00e8s populaire langage objet <a href=\"http:\/\/en.wikipedia.org\/wiki\/Ruby_language\">Ruby<\/a>, en plus des langages classiquement support\u00e9s par .NET tels que C# ou Python. L&#8217;ouverture n&#8217;est par contre pas le fort de Silverlight du c\u00f4t\u00e9 de la vid\u00e9o : il ne supporte que le format SMTPE VC1 (de la HD au mobile). Aucune information n&#8217;a filtr\u00e9 sur une \u00e9ventuelle&nbsp;architecture de codecs pour supporter d&#8217;autres formats vid\u00e9o. Donc, des conversions de formats sont pr\u00e9vues au programme &#8211; avec Expression Media Encoder&nbsp;&#8211; pour les Divx, H264, MPEG2 et autres MPEG4. En audio, le choix est l\u00e9g\u00e8rement plus ouvert&nbsp;avec le support du&nbsp;WMA et du MP3. Enfin, et ce n&#8217;est pas de l&#8217;ouverture mais plut\u00f4t de la capture de part de march\u00e9 de concurrent, un outil de conversion est fourni pour passer de Flash \u00e0 Silverlight.<\/li>\n<\/ul>\n<p>D&#8217;un point de vue pratique, l&#8217;<a href=\"http:\/\/www.microsoft.com\/silverlight\/install.aspx\">installation de Silverlight<\/a>&nbsp;(1.0 beta) est rapide, avec un t\u00e9l\u00e9chargement de moins de 2 Mo. Tout du moins sous Windows Vista ou sous Windows XP SP2 qui disposent d\u00e9j\u00e0 du framework .NET. Dans le cas contraire, on est bon pour 50 Mo de t\u00e9l\u00e9chargement. Une fois le plug-in install\u00e9, on peut tester quelques petites applications de d\u00e9monstration comme cet outil de pr\u00e9sentation&nbsp;de <a href=\"http:\/\/silverlight.net\/fox\/\">bandes annonces de Fox<\/a>: <\/p>\n<p><a href=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0115.png\" atomicselection=\"true\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" height=\"253\" src=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0-thumb35.png\" width=\"382\" border=\"0\"><\/a> <\/p>\n<p>En fait, il y a coexistence entre la b\u00eata de Silverlight 1.0 (2 Mo) et une alpha de Silverlight 1.1 (4 Mo). C&#8217;est vraiment un comble! Cette derni\u00e8re version qui seule supporte la CLR et les langages de programmation de .NET permet de visualiser quelques d\u00e9monstrations comme ce Silverlight Airlines qui permet visuellement d&#8217;identifier le meilleur vol et parcours pour aller d&#8217;une ville \u00e0 une autre des USA: <\/p>\n<p><a href=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image055.png\" atomicselection=\"true\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" height=\"192\" src=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0-thumb15.png\" width=\"381\" border=\"0\"><\/a>&nbsp;<\/p>\n<p>Dans son lancement de Silverlight, les premi\u00e8res r\u00e9f\u00e9rences clients de Microsoft \u00e9taient tr\u00e8s orient\u00e9es &#8216;m\u00e9dias&#8217; et r\u00e9duites aux USA: CBS (pour un site communautaire en cours de cr\u00e9ation, \u00e0 la MySpace), Fox que l&#8217;on a d\u00e9j\u00e0 vu, Major League Baseball (t\u00e9l\u00e9vision en direct et \u00e0 la demande), Skinkers (push streaming vid\u00e9o sur mobiles),&nbsp;Limelight Delivery Network (distribution de contenus m\u00e9dias) et enfin Netflix pour la consultation d&#8217;extraits vid\u00e9os. <\/p>\n<p>Il y avait \u00e9galement quelques logiciels ou mat\u00e9riels en tirant parti: <a href=\"http:\/\/www.roxio.com\/enu\/solutions\/roxiolabs\/products\/buzz\/default.html\">Roxio Buzz<\/a>, un&nbsp;outil gratuit de montage vid\u00e9o reli\u00e9 aux plates-formes de streaming comme Silverlight Streaming (version payante pour supporter les codecs vid\u00e9o comme le MPEG2, MPEG4 ou AAC d&#8217;Apple), Topbanana de Metaliq, un outil de montage vid\u00e9o \u00e9quivalent issu d&#8217;une jeune startup, et enfin <a href=\"http:\/\/www.tarari.com\/press\/Tarari_Collaborates_with_Microsoft_Press_%20Release.pdf\">Tarari<\/a> qui annonce un encodeur vid\u00e9o mat\u00e9riel (pour le VC1 de Silverlight).<\/p>\n<p>Bref, avec Silverlight, on b\u00e9n\u00e9ficie de sp\u00e9cificit\u00e9s de .NET et de Microsoft: un choix de langages de programmation et d&#8217;outils de d\u00e9veloppement modernes, la meilleure performance d&#8217;ex\u00e9cution&nbsp;et une plate-forme d&#8217;outils de cr\u00e9ation adapt\u00e9e \u00e0 tous les m\u00e9tiers. Par contre, c&#8217;est malgr\u00e9 un peu d&#8217;ouverture, un monde assez &#8220;Microsoft centric&#8221;. Vous voulez en savoir plus? L&#8217;occasion vous en est donn\u00e9e en participant \u00e0 la conf\u00e9rence <a href=\"http:\/\/www.microsoft.com\/france\/msdn\/mix\/default.mspx\">Mix \u00e0 Paris, au Cirque d&#8217;Hiver, le 21 juin<\/a>. Vous pouvez aussi lire divers compte rendu de l&#8217;annonce de MIX Vegas, notamment <a href=\"http:\/\/www.fredcavazza.net\/index.php?2007\/04\">chez Fred Cavazza<\/a>. Et aussi la <a href=\"http:\/\/weblogs.asp.net\/scottgu\/archive\/2007\/05\/07\/silverlight.aspx\">description assez compl\u00e8te<\/a> de Silverlight faite par Scott Guthrie de Microsoft Corp.<\/p>\n<p>Au passage, les rumeurs sur l&#8217;acquisition de Yahoo par Microsoft me semblent peu fond\u00e9es. Contrairement \u00e0 l&#8217;id\u00e9e r\u00e9pandue chez ses d\u00e9tracteurs, Microsoft fait tr\u00e8s rarement l&#8217;acquisition de concurrents, \u00e0 fortiori&nbsp;de grande taille. Les redondances entre MSN\/Live et Yahoo sont trop cons\u00e9quentes (mail, messagerie instantan\u00e9e, portail, blog, partage photo\/vid\u00e9os, etc) pour qu&#8217;une int\u00e9gration puisse fonctionner sans pertes et fracas. Par contre, il n&#8217;est pas impossible que Microsoft discute avec Yahoo de partenariats technologiques divers. Pourquoi pas, relatifs \u00e0 l&#8217;usage chez Yahoo de Silverlight! Mais je peux me tromper, on verra bien&#8230;<\/p>\n<p>Sinon, Microsoft vient de faire, comme \u00e7a, <a href=\"http:\/\/minimsft.blogspot.com\/2007\/05\/ack-as-in-ackquisition.html\">l&#8217;acquisition de aQuantive<\/a> hier pour la modique somme de $6B. C&#8217;est sa plus grosse acquisition historique.&nbsp;Faute d&#8217;avoir pu gober DoubleClick, attrap\u00e9 par Google il y a quelques semaines pour $3B. aQuantive est l&#8217;un des principaux concurrents, certes moins connu, de DoubleClick. Il faut dire que aQuantive avait un atout de taille: ils sont bas\u00e9s&nbsp;\u00e0 Seattle! Mais ceci n&#8217;a pas de rapport avec Silverlight, mais plus avec la volont\u00e9 de Microsoft de mon\u00e9tiser ses services Internet par la publicit\u00e9, face \u00e0 l&#8217;omnipr\u00e9sent Google.<\/p>\n<p><strong><u>Adobe, Apollo et Flex<\/u><\/strong><\/p>\n<p><a href=\"http:\/\/labs.adobe.com\/technologies\/apollo\/\">Apollo d&#8217;Adobe<\/a> est l&#8217;\u00e9quivalent le plus proche de Silverlight. A ceci pr\u00e8s que ce run-time permet de mixer dans&nbsp;le m\u00eame composant logiciel&nbsp;du code HTML, JavaScript en plus du Flash et au passage du PDF.<\/p>\n<p>Un plug-in Silverlight sera \u00e9crit dans un langage supportant .NET, puis fera appel \u00e0 XAML pour la description graphique de l&#8217;application. Et il sera ex\u00e9cutable dans le contexte d&#8217;une page HTML, elle-m\u00eame rendue par un navigateur. Alors qu&#8217;un composant Appolo est en fait une application qui s&#8217;ex\u00e9cute directement \u00e0 partir du bureau. <\/p>\n<p>Du c\u00f4t\u00e9 outil de d\u00e9veloppement, Adobe propose Flex pour cr\u00e9er ces applications Apollo. Flex comprend <a href=\"http:\/\/www.adobe.com\/fr\/products\/flex\/flexbuilder\/\">Flex Builder<\/a>, un environnement de d\u00e9veloppement (IDE) bas\u00e9 sur Eclipse (<em>illustration ci-dessous<\/em>), Flex Framework, un mod\u00e8le de programmation, et <a href=\"http:\/\/www.adobe.com\/fr\/products\/flex\/dataservices\/\">Flex Data Services<\/a>, un service d&#8217;acc\u00e8s (\u00e9crit en Java) aux donn\u00e9es g\u00e9rant la synchronisation entre client et serveur. L&#8217;interface des&nbsp;applications Flex est cod\u00e9e avec MXML, une sorte d&#8217;\u00e9quivalent du XAML de Microsoft. <\/p>\n<p>Sur le poste de travail, l&#8217;application Apollo s&#8217;ex\u00e9cute avec un run-time Apollo. Une application Flex se contente du Flash Player. Dans les deux cas, on a une bonne vieille application &#8220;client riche&#8221; dot\u00e9e des moyens de communication avec les serveurs sur Internet. Voici pour r\u00e9sumer tout cela une cette comparaison sch\u00e9matique d&#8217;architecture entre les applications Silverlight, Flex et Apollo (<em>cliquer dessus pour agrandir le sch\u00e9ma<\/em>):<\/p>\n<p><a href=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0215.png\" atomicselection=\"true\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" height=\"187\" src=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0-thumb75.png\" width=\"391\" border=\"0\"><\/a> <\/p>\n<p>Au del\u00e0 de cette notion de client riche &#8220;standalone&#8221;, ce qui est un peu nouveau dans l&#8217;architecture d&#8217;Adobe, c&#8217;est l&#8217;intrusion dans le serveur. Jusqu&#8217;\u00e0 pr\u00e9sent, un plug-in Flash s&#8217;ex\u00e9cutait tout seul sur le client, sur lequel il avait \u00e9t\u00e9 t\u00e9l\u00e9charg\u00e9 comme simple fichier \u00e0 partir d&#8217;un serveur. Une application Flex ou Apollo feront appel aux Flex Data Services tournant sur serveur. Ce n&#8217;est probablement qu&#8217;un d\u00e9but et il ne serait pas \u00e9tonnant de voir un jour Adobe \u00e9toffer son offre de middleware serveur \u00e0 partir de cette t\u00eate de pont.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" height=\"314\" src=\"http:\/\/www.cleancode.com\/blog\/wp-content\/uploads\/2006\/12\/designView.JPG\" width=\"384\"><\/p>\n<p>Un avantage \u00e0 signaler pour l&#8217;offre Adobe: elle est &#8220;plus&#8221; multiplateforme car l&#8217;\u00e9diteur supporte lui-m\u00eame Linux. M\u00eame s&#8217;il ne supporte officiellement que RedHat et Novell Suse. Sa strat\u00e9gie pour les mobiles semble par contre moins avanc\u00e9e que celle de Microsoft et de Sun, que l&#8217;on verra juste apr\u00e8s.<\/p>\n<p>Microsoft et Adobe ont deux approches propri\u00e9taires qui se battent en duel. Ils rivalisent d&#8217;ouverture dans leur monde propri\u00e9taire: Microsoft a fait standardiser le VC1, le C#, la CLR, et a mis en open source la DLR, un bout du run-time de Silverlight. Mais le langage script de Flash, Action Script, est aussi un standard ECMA, organisme convertissant r\u00e9guli\u00e8rement des sp\u00e9cifications propri\u00e9taires en standards de jure. L&#8217;annonce de la mise des outils Flex 3.0 en open source suit cette tendance. Quand ont <a href=\"http:\/\/labs.adobe.com\/wiki\/index.php\/Flex:Open_Source\">lit entre les lignes<\/a>, on constate que seuls certains composants de Flex seront mis en open source. Et que cela ne concerne pas les extensions \u00e0 Eclipse ni les Flex Data Services. L&#8217;approche open source est donc utilis\u00e9e plus \u00e0 des fins marketing qu&#8217;autre chose, tout en pr\u00e9servant le c\u00f4t\u00e9 propri\u00e9taire des composants cl\u00e9s de la plate-forme Flex et Apollo. A l&#8217;instar de Microsoft avec Visual Studio et Expression, le Flex Builder d&#8217;Adobe reste bien payant.<\/p>\n<p>Adobe a pour lui la chance qu&#8217;a Microsoft dans d&#8217;autre domaine : l&#8217;inertie de march\u00e9. Qui fait qu&#8217;il sera difficile de d\u00e9loger Flash. Le web continuera donc d&#8217;\u00eatre un bric \u00e0 brac qui voit se c\u00f4toyer de nombreuses technologies ouvertes et propri\u00e9taires, avec une palanqu\u00e9e de plug-ins et autres composants logiciels incompatibles entre eux.<\/p>\n<p>Avec Adobe, on est donc dans le standard du moment, un peu plus proche des standards Web,&nbsp;et on est plus multi-plate-forme qu&#8217;avec Microsoft.<\/p>\n<p><strong><u>Sun et JavaFX<\/u><\/strong><\/p>\n<p>Sun a <a href=\"http:\/\/www.sun.com\/aboutsun\/pr\/2007-05\/sunflash.20070508.2.xml\">annonc\u00e9 JavaFX<\/a> quelques jours apr\u00e8s l&#8217;annonce de Silverlight par Microsoft. On pourrait dire: &#8220;en r\u00e9action \u00e0&#8221;. D&#8217;un point de vue du timing, c&#8217;\u00e9tait \u00e0 l&#8217;occasion de la conf\u00e9rence JavaOne qui avait alors lieu, et de toutes mani\u00e8res, ces choses l\u00e0 ne se pr\u00e9parent pas en quelques semaines. M\u00eame s&#8217;il apparait que l&#8217;annonce est maigre et ne constitue pas une avanc\u00e9e autant que celles d&#8217;Adobe ou de Microsoft.<\/p>\n<p>JavaFX Script est un langage de scripting qui fonctionne sur toute machine virtuelle JavaSE. Sorte d&#8217;interm\u00e9diaire entre Java et JavaScript, il s&#8217;appuie sur la biblioth\u00e8que de composants Swing servant \u00e0 d\u00e9crire les \u00e9l\u00e9ments de l&#8217;interface graphique. Mais l&#8217;ensemble ne semble pas permettre la cr\u00e9ation d&#8217;applications aussi riches visuellement que Silverlight ou Flex. <\/p>\n<p>Alors, o\u00f9 est l&#8217;interpr\u00e9teur de ce langage? L&#8217;histoire ne le dit pas et le marketing de Sun est assez obscur de ce point de vue l\u00e0. L&#8217;interpr\u00e9teur doit se charger avec l&#8217;application, \u00e9tant lui-m\u00eame \u00e9crit en Java. Ou bien JavaFX n&#8217;est qu&#8217;un nom marketing pour un sous-ensemble de Java ou de JavaScript. En tout cas, ceci n&#8217;augure rien de bon en termes de performances. Les applications JavaFX sont des fichiers .jar charg\u00e9s \u00e0 partir d&#8217;un navigateur et qui s&#8217;ex\u00e9cutent ensuite dans leur propre fen\u00eatre.<\/p>\n<p>Sun propose aussi JavaFX Mobile, un middleware pour mobile permettant d&#8217;ex\u00e9cuter ces nouveaux scripts. Un bon point pour Java qui est effectivement tr\u00e8s pr\u00e9sent sur ce march\u00e9.<\/p>\n<p>Autre bon point pour Sun et Java, le c\u00f4t\u00e9 multi-plate-forme qui est bien meilleur que pour Microsoft Silverlight et Adobe Flex\/Appolo. Car Java supporte \u00e0 peu pr\u00e8s tout ce qui existe comme syst\u00e8me d&#8217;exploitation. De plus, JavaFX en <a href=\"https:\/\/openjfx.dev.java.net\/\">open source<\/a>, of course.<\/p>\n<p>On d\u00e9veloppe les applications JavaFX \u00e0 partir de NetBeans, l&#8217;environnement de d\u00e9veloppement gratuit de Sun \u00e9crit lui-m\u00eame en Java.<\/p>\n<p>Donc, what&#8217;s new? Pourquoi a-t-on besoin d&#8217;un langage de scripting lui-m\u00eame tournant au dessus de Java? La litt\u00e9rature indique que cela permet d&#8217;ouvrir Java \u00e0 un plus grand nombre de d\u00e9veloppeurs. Mais n&#8217;est-ce pas le r\u00f4le de JavaScript? Myst\u00e8re pour moi&#8230;<\/p>\n<p>Sur le site de JavaFX, on pouvait tester quelques petites applications de d\u00e9monstration comme celle de Motorola qui a l&#8217;air bien anim\u00e9e et rapide:<\/p>\n<p><a href=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0125.png\" atomicselection=\"true\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" height=\"207\" src=\"https:\/\/www.oezratty.net\/wordpress\/wp-content\/windowslivewritersilverlight-fa38image0-thumb45.png\" width=\"378\" border=\"0\"><\/a> <\/p>\n<p>Et une autre de <a href=\"http:\/\/download.java.net\/general\/openjfx\/demos\/tesla.jnlp\">Tesla Motors<\/a>. Mais, diff\u00e9rence notable par rapport aux d\u00e9monstrations de Microsoft et Adobe: il n&#8217;y a pas de vid\u00e9os! Pourtant, cela doit \u00eatre&nbsp;possible.<\/p>\n<p>Au bilan, avec Sun et Java, on n&#8217;est pas tr\u00e8s avanc\u00e9, sauf peut-\u00eatre sur les mobiles o\u00f9 Java est tr\u00e8s pr\u00e9sent.<\/p>\n<p><strong><u>Solutions&nbsp;open source<\/u><\/strong><\/p>\n<p>Le monde de l&#8217;open source est tr\u00e8s divers et son approche est donc assez fragment\u00e9e. M\u00eame si elle pr\u00e9sente l&#8217;approche de ne pas \u00eatre propri\u00e9taire et proche des standards du Web.<\/p>\n<p>Historiquement, les \u00e9volutions du d\u00e9veloppement Web dans ce monde passaient par Ajax et ses \u00e9volutions comme XAP (soutenu par <a href=\"http:\/\/en.wikipedia.org\/wiki\/Nexaweb\">Nexaweb<\/a>) ou impl\u00e9mentations diverses comme chez <a href=\"http:\/\/www.helmitechnologies.com\/company\/news_and_events\/press_releases\/\">Helmi<\/a>, tout comme XUL &#8211; un vague \u00e9quivalent open source du XAML de Microsoft &#8211; et SVG, un format d&#8217;image vectoriel 2D d\u00e9riv\u00e9 de XML. (NB: Microsoft fournit aussi une impl\u00e9mentation d&#8217;Ajax sur ASP.NET avec Atlas).<\/p>\n<p>C&#8217;est le projet <a href=\"http:\/\/en.wikipedia.org\/wiki\/OpenLaszlo\">OpenLaszlo<\/a>, d&#8217;origine italienne,&nbsp;qui semble le plus proche de Silverlight et de Flex. Il s&#8217;appuie sur un langage LZX de description d&#8217;interface graphique similaire \u00e0 XUL (Mozilla Foundation), XAML (Microsoft) et MXML (Adobe) et sur un logiciel serveur qui compile le code pour l&#8217;envoyer aux navigateurs au format Shockwave reconnu par le player&nbsp;Flash ou bien en JavaScript. Les <a href=\"http:\/\/www.openlaszlo.org\/demos\">quelques d\u00e9monstrations<\/a> d&#8217;applications r\u00e9alis\u00e9es avec sont assez classiques dans la forme.<\/p>\n<p>Enfin, du c\u00f4t\u00e9 du consortium ObjectWeb, il n&#8217;y a <a href=\"http:\/\/solutions.ow2.org\/\">pas de signe de vie<\/a> d&#8217;une plate-forme int\u00e9gr\u00e9e pour le &#8220;rich web&#8221;. Ce qui s&#8217;explique par l&#8217;orientation middleware serveur et d\u00e9veloppement d&#8217;applications en entreprise du consortium et de ses diff\u00e9rents membres.<\/p>\n<p>A ce stade, aucune solution open source n&#8217;a r\u00e9ussi \u00e0 v\u00e9ritablement \u00e9gratigner Adobe c\u00f4t\u00e9 part de march\u00e9, ou Microsoft du c\u00f4t\u00e9 de la coh\u00e9rence de l&#8217;architecture.<\/p>\n<p><strong><u>Conclusion<\/u><\/strong><\/p>\n<p>Je constate au vu de ces acteurs du march\u00e9 que leur marketing est assez cryptique. Leurs explications contiennent peu de sch\u00e9mas qui expliquent qui fait quoi, quel logiciel tourne o\u00f9 et s&#8217;interface avec quoi. Le manque de p\u00e9dagogie est flagrant. Adobe n&#8217;est pas trop mauvais, Sun est une catastrophe, et&nbsp;Microsoft se situe entre les deux.<\/p>\n<p>Je note aussi une cons\u00e9quence de l&#8217;\u00e9mergence de ces applications &#8220;riches&#8221; qu&#8217;il ne faut pas n\u00e9gliger: elle peut fermer l&#8217;Internet et notamment emp\u00eacher l&#8217;indexation de contenus, s&#8217;ils sont tous encapsul\u00e9s dans ces applications.<\/p>\n<p>Bref&#8230; net net, Adobe et Microsoft restent les deux acteurs en lice dans ce web propri\u00e9taire!<\/p>\n<p>Encore faut-il faire la part des choses sur le march\u00e9 concern\u00e9. Il s&#8217;agit ici du march\u00e9 des &#8220;applications riches&#8221;. Mais l&#8217;essentiel du web, ce sont des applications &#8220;pauvres&#8221; &#8211; certes dynamiques &#8211; qui n&#8217;ont pas besoin d&#8217;\u00eatre &#8220;riches&#8221;. Donc, les applications Web d\u00e9velopp\u00e9es avec des outils plus traditionnels comme le bon vieux PHP et le JavaScript, continueront de dominer l&#8217;Internet pendant longtemps.<\/p>\n<p><em>Article tr\u00e8s l\u00e9g\u00e8rement mis \u00e0 jour le 20 mai 2007<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les annonces r\u00e9centes de Microsoft Silverlight, Adobe Apollo et des \u00e9volutions de Flex, tout comme celle de JavaFX de Sun donnent un peu le tournis dans le monde des &#8220;Rich Internet Applications&#8221;. Il y a de quoi y perdre son latin car ces technologies sont toutes concurrentes, mais elles pr\u00e9sentent des diff\u00e9rences certaines que leurs [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,7,3],"tags":[],"class_list":["post-240","post","type-post","status-publish","format-standard","hentry","category-internet","category-logiciels","category-microsoft"],"views":54562,"_links":{"self":[{"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/posts\/240","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/comments?post=240"}],"version-history":[{"count":0,"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/posts\/240\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/media?parent=240"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/categories?post=240"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.oezratty.net\/wordpress\/wp-json\/wp\/v2\/tags?post=240"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}