Qu’est-ce que Flex ?

Et d’abord, qu’est-ce que les interfaces riches ?

Définition

Le terme “Rich Internet Application” a été introduit dans une publication de Macromedia en mars 2002. Il désigne une application Web qui permet entre autres d’utiliser des vidéos et de la musique plus facilement qu’en Web “classique”. De plus, la navigation a été repensée : on ne change plus de page à chaque clic, la validation d’un formulaire ne va pas forcément recharger toute la page, mais peut en recharger seulement une partie.

Principe de fonctionnement

Contrairement aux pages web “classiques” (avant l’apparition des RIA) qui envoyaient une requête au serveur à chaque action de l’utilisateur – comme par exemple le clic sur un lien dans une page – et qui rechargeaient toute la page à ce moment-là, les applications riches reprennent une partie des traitements sur la machine de l’utilisateur. Comme dit au paragraphe précédent, un clic dans une application riche ne recharge pas forcément toute la page.
Au lancement, l’application est téléchargée sur le poste client (ce qui peut prendre plus de temps que pour une page HTML), mais ensuite, la navigation de l’utilisateur se fait en temps réel, tant que des données n’ont pas à être envoyées au serveur.

Panorama

Les trois principaux acteurs dans le domaine des applications riches sont Adobe, Microsoft et Mozilla. Mais d’autres sociétés essaient de se positionner sur le marché, comme Laszlo Systems, AOL ou encore Google. Voici une liste non exhaustive de technologies permettant de créer des RIA :
– Flex d’Adobe, qui profite de son expérience autour de Flash. Flash est apparu en 1996, et se retrouve aujourd’hui sur 98% des ordinateurs.
– XUL de Mozilla.
– Silverlight de Microsoft, annoncé en avril 2007.
– les API Google qui permettent de créer des RIA
– OpenLaszlo, développé depuis 6 ans en open source par Laszlo Systems
– Wazaabi, qui est une plateforme client riche d’Eclipse permettant de créer des RIA en J2EE en se basant sur du XUL.

Flex

Flex est une solution de développement, créée par Macromedia en 2004 puis reprise par Adobe en 2006 suite au rachat de Macromedia. Flex permet de créer et de déployer des RIA multi plateformes. Il fait appel à deux langages :
– MXML, qui est un langage dérivé du XML, développé par Macromedia puis Adobe pour Flex. Ce langage est utilisé pour la partie interface utilisateur de l’application.
– ActionScript 3.0, qui est un langage de script orienté objet, semblable à JavaScript. Il permet de traiter les interactions avec l’utilisateur.

5 commentaires

  1. HED said,

    5 juillet 2007 at 19:26

    Cool ! Merci pour cet eclaircissement sur ce panel de technos qui bougent tres vite…
    Vu que tu ty connais bien : qu’est ce que c’est que Adobe Air (ou Apollo) ? Je commence à le voir sur le net, mais quel est son rapport avec Flex ?

    Continue ton blog !

  2. Stella said,

    9 juillet 2007 at 17:20

    Je n’ai jamais utilisé AIR (anciennement Apollo), donc, je ne pourrai t’en donner une définition très précise. Donc, j’ai fait quelques recherches sur le net, et voici ce que j’ai trouvé (en fait, c’est Sylvain qui m’a filé ce lien, mais bon…).
    En résumé, Air permet de créer des RDA (Rich Desktop Applications). Et si j’en crois ce billet de Fabien Deshayes, on utilise Flex pour développer des applications Air.

    Mais encore une fois, je n’ai jamais utilisé cette techno, donc, il est possible que je me trompe (d’ailleurs, si vous remarquez que je me trompe, merci de me corriger ;-) )

  3. HED said,

    11 juillet 2007 at 20:37

    Merci pour ces éclaircissements. J’ai vu que l’application-phare utilisant cette nouvelle techno “desktop-web” était Pownce !

    http://pownce.com/

    C’est encore en beta ou quelque-chose comme ça, mais ça promet.

  4. UnSeeN said,

    28 juillet 2007 at 23:55

    Ca manque de clarification tout ca.
    Même si le gros du problème est expliquer ici :) !
    Une image pour les anti-lecturiens serait la bienvenue même si c’est dur à illustrer :) !

  5. Stella said,

    29 juillet 2007 at 0:08

    Oui, bon, je vais revoir cette déf pour qu’elle soit un peu plus claire :-D

RSS feed for comments on this post · TrackBack URL