01net Pro Entreprise informatique
Actualités gestion et logiciel informatique professionnel
Offre et recherche Emploi informatique internet
Salon conférences inofrmatique IT ebusiness 01
Le Cloud Computing
Vidéos reportage entreprise acteur informatique
Retrouvez tous les services 01Net dédiés aux professionnels !
Télécharger logiciels Pro et progiciels
Livres blancs e-commerce informatique et nouvelles technologies
Retrouvez l'ensemble des dossiers de la rédaction 01net Entreprise
Les synthèses des bonnes pratiques sur les sujets IT du moment

Les environnements intégrés se multiplient

Afin d'augmenter la productivité, les éditeurs proposent des ateliers de développement rapide qui masquent le code Javascript d'Ajax. Microsoft, Sun et Adobe essaient de couvrir tout le cycle du développement en adressant les graphistes et en facilitant leur collaboration avec les développeurs.

De nombreuses technologies de client riche internet (RIA) reposant sur une machine virtuelle ont vu le jour : Flex d'Adobe, Silverlight de Microsoft, JavaFX de Sun, XUL de la communauté Mozilla, etc. Elles offrent une alternative aux frameworks DHTML/Ajax apparus sur la même période, et s'exécutent directement dans le navigateur.
Les applications RIA et les frameworks DHTM/Ajax partagent la même architecture. Ils proposent une interface graphique utilisateur (GUI) événementielle dont les échanges client-serveur sont pilotés par des composants graphiques indépendants. Tous les éditeurs se rapprochent donc d'un même modèle de développement. Basé sur un framework comprenant des contrôles graphiques, il permet de les assembler via une interface Wysiwyg (' What you see is what you get '). ' Un développeur d'applications RIA a besoin des mêmes outils que ceux qu'il utilise pour coder en Java ou .Net ', estime Michaël Chaize, consultant chez Adobe. On assiste donc à un retour aux sources avec l'apparition d'ateliers de développement rapide RAD (Rapid Application Development) qui s'interfacent avec les outils destinés aux graphistes. ' Les environnements de développement intégré destinés aux applications RIA cherchent à masquer la complexité de la tuyauterie interne. Ce n'est possible que grâce à l'abstraction que procurent les frameworks ', explique Sami Jaber, architecte chez DNG Consulting.

Adobe règne sur Flex

Mis à part le projet open source FDT (Flash Development Tool), Flexbuilder 2.0 d'Adobe est le seul environnement de développement intégré Flex disponible pour les projets d'entreprise. ' D'autres pourraient cependant voir le jour avec l'ouverture du kit de développement logiciel sous licence open source ', note Mathieu Isaia, directeur associé chez People in Action. En attendant, Flexbuilder rencontre un grand succès car ' il s'appuie sur l'environnement de développement Eclipse auquel les développeurs sont déjà habitués. Ils n'ont qu'à configurer le plugin et le tour est joué ' explique Yann Chevalier, formateur Flex chez Baao.
Flexbuilder propose deux perspectives : une vue Wysiwyg destinée à agencer les composants par glisser-déposer, et un éditeur de code pour relier les contrôles graphiques aux services et sources d'informations sous-jacentes. L'environnement de développement intègre aussi un débogueur et un ' profiler '. Il ne lui manque qu'une véritable fonction de refactoring (réingénierie d'applications existantes) pour être complet. Il est d'ailleurs prévu dans Flexbuilder 3.0.
' L'autre point fort de Flex est sa capacité à dialoguer très facilement avec les services métier de l'entreprise, notamment des technologies Java telles que Spring et Hibernate ', précise Benjamin Houdu, architecte chez Zenika. Adobe propose en effet un bus?"Livecycle Data Services ES ?" qui simplifie le transport des données entre le client et les services. Ce dernier est disponible sous licence LGPL (projet Blaze DS). Il complète ainsi les autres alternatives libres ?" AMF-PHP (PHP), Fluorine (.Net), OpenAMF (Java), Granite Data Services (Java), etc. ?" ' qui sont utilisées presque systématiquement ' indique Benjamin Houdu. Dernier atout : ' Flexbuilder est bien intégré avec les autres outils de la chaîne de production : gestion de version, archivage... ', estime Jérôme Goubin, directeur du pôle media d'Alligra.

Microsoft mise sur les synergies

Avec Silverlight 2.0, la firme de Redmond fait figure d'outsider face à Adobe et aux frameworks DHTML/Ajax. Elle propose trois outils qui couvrent tout le cycle de vie du projet : le graphiste s'appuie sur Expression Design pour créer l'interface ; le développeur web l'importe au format XAML dans Expression Blend, afin de connecter l'interface à des contrôles graphiques ; puis le développeur importe le projet dans Visual Studio pour relier les services métier sous-jacents à ces contrôles. Pour un développement de grande ampleur, Blend servira à créer une maquette de l'application riche qui sera réutilisée par les développeurs.
' Notre objectif est de limiter au maximum les dépenses d'énergie inutiles en optimisant la collaboration entre les différents acteurs du projet ', explique Blaise Vignon, chef de produit Visual Studio chez Microsoft. Afin de simplifier l'intégration du client riche RIA avec les services sous-jacents, Microsoft propose ADO.Net Data Services (projet Astoria) qui expose n'importe quelle source de données Microsoft via une interface de programmation Rest (Representational State Transfer) et des messages JSON (Javascript Object Notation) ou Atom/App.

Des développements rapides d'application pour Ajax

Malgré la puissance des clients internet riches propriétaires, de nombreuses entreprises privilégient une approche standard en s'appuyant uniquement sur un framework DHTML/Ajax. L'application s'exécute alors dans n'importe quel navigateur. Deux approches coexistent : le recours à l'un des nombreux frameworks natifs existants, associé à un environnement de développement IDE, ou la génération du client riche à l'aide d'un autre langage (C#, Java, Ruby, etc.). Pour de petits projets très spécifiques, certains développeurs privilégient Notepad++ ou Ultraedit pour coder du Javascript ' à la main ' et Firebug pour le débogage. Mais peu ont les compétences nécessaires. Les entreprises industrialisent donc le développement à l'aide d'un véritable environnement IDE. ' Aptana Studio est l'outil basé sur Eclipse qui a connu le développement le plus agressif en faveur d'Ajax et des RIA ', constate Thomas Parisot, consultant chez Clever Age. Sun propose avec la version 6.0 de Netbeans le débogage Ajax directement au niveau des composants JSF (Java Server Faces). jMaki propose de son côté une interface homogène pour réutiliser les composants de Google, Yahoo, Dojo, etc...
Malheureusement, ni Aptana Studio, ni jMaki+Netbeans ne proposent un développement Wysiwyg. Pour un développement rapide, il faut se tourner vers les outils d'Adobe, Sun, Microsoft, et les plugin Eclipse pour GWT (Google Web Toolkit). Adobe et Microsoft ont créé leur propre framework DHTML/Ajax pour étendre les capacités de leur environnement IDE : ASP.Net Ajax chez Microsoft et Spry chez Adobe. Sun et la communauté open source Java ont intégré Ajax à JSF et Struts, par exemple. Cette intégration permet aux développeurs de travailler avec des interfaces de programmation, un langage et un environnement de développement qu'ils maîtrisent déjà dans une approche de type développement rapide d'applications (RAD).
La communauté Java a été séduite par le framework Google Web Toolkit associé à deux plug in pour Eclipse IDE : GWT Designer et Vistafei for GWT. ' Ainsi, nos équipes développent plus rapidement et livrent des applications parfaitement portables d'un navigateur à l'autre ', illustre Didier Girard, directeur technique de Sfeir. Encore à l'état de projet chez Microsoft, Volta proposera bientôt un équivalent au trio Eclipse IDE + GWT + GWT Designer au sein de Visual Studio 2008. ' Le développeur crée une application Ajax par simple-glisser-déplacer ', explique Sami Jaber, de DNG Consulting. SoftwareAG, avec Natural for Ajax et Ruby on Rails, propose la même approche en générant l'interface Ajax à partir de code Natural et Ruby.
Le succès de GWT pourrait bien saper l'initiative de Sun qui a lancé en mai 2007 JavaFX Script et JavaFX Mobile. Cette solution technique est encore limitée et aucun outil avancé n'est disponible pour le moment. Suny travaille cependant via un partenariat avec Adobe. Il pourrait dévoiler son atelier de création d'interface JavaFX destiné aux graphistes en mai prochain à l'occasion de JavaOne.

Une forte demande en environnement de développement

Le marché total des outils RIA, qui était inférieur à 100 M$ en 2006, devrait dépaser les 500 M$ en 2011. Pour l'essentiel, la demande portera alors sur les environnements, le marché du composant ne dépassera pas 10 % du total alors que celui des extensions sera de l'ordre de 85 M$.

2 questions à... : Sami Jaber, fondateur de DNG Consulting, société de conseil spécialisée dans les architectures orientées services et le Web 2.0

Le développement d'un client riche RIA est-il plus complexe qu'un site web traditionnel ?

' Tout dépend du niveau d'ergonomie. La courbe d'apprentissage des technologies RIA est plus longue. Mais le retour sur investissement s'inverse lorsque les besoins en termes d'ergonomie commencent à être complexes. Les technologies web traditionnelles nont pas été conçues pour développer des applications client-serveur réactives, intégrant beaucoup de graphiques dynamiques. '

Développe-t-on une application Ajax comme une application Flex ou Silverlight ?

' Il y a un monde entre les possibilités des technologies reposant sur une machine virtuelle comme Flex ou Silverlight et les frameworks Ajax. Dans le premier cas, tout est possible, mais pas avec Ajax. Malgré GWT et Volta, ce dernier reste un palliatif aux limitations de HTML. Le fait que le format interne des pages soit en dans ce langage est une limitation que toutes les abstractions du monde ne pourront ôter. '

envoyer
par mail
imprimer
l'article
Nos partenaires