Adobe Flex 4 : les nouveautés

Par:
fredericmazue

mer, 07/04/2010 - 15:45

Disponible depuis mi-mars, la 4e version majeure de Flex, sans présenter de rupture majeure avec la v3, promet beaucoup : nouvelles fonctions, nouveaux outils, nouvelles approches.

Le développeur Flex connaissant la v3 ne sera pas pénalisé car il retrouvera très rapidement les mêmes réflexes. Et les équipes d’Adobe ont tout fait pour préserver la compatibilité du code vers la v4. Surtout, l’éditeur met l’accent dessus, cette version est issue d’une étroite collaboration entre Adobe et la communauté. Les nombreux retours de développeurs, les suggestions, ont abouti à l’introduction de nombreuses améliorations et nouveautés.

Les nouveautés du Flex SDK

Premier changement notable, un développement Flex 4 compilé produit un fichier Flash qui ne pourra être exécuté que par un Flash Player 10 au minimum. Avec Flex 3, la majorité des développements étaient à destination de la version Flash Player 9. Bonne nouvelle, Flash Player 10 est déjà très largement diffusé et présent sur plus de 95% des postes (PC, MAC et Linux). Les nouveautés du SDK suivent trois orientations souhaitées par la communauté de développeurs de RIA : une meilleure gestion du design des interfaces, une augmentation de la productivité des développeurs, une évolution du Framework pour tenir compte des nouveautés du Flash Player.

 

La principale innovation en termes de design d’applications riches réside dans la nouvelle architecture des composants Flex, appelée Spark. Construite à partir de l’ancien modèle MX, Spark fournit un mécanisme plus simple et plus expressif pour les développeurs et les designers, qui pourront désormais travailler ensemble sur le design des applications Flex. L’objectif de Spark est de séparer au sein même d’un composant l’apparence dans une classe de skin, du comportement (dans une classe principale). Une autre nouveauté est le support du format FXG, le nouveau format d’échange de graphisme d’Adobe. Le Framework Flex possède désormais des primitives graphiques alignées avec le standard FXG. Vous pouvez ainsi décrire en code des formes complexes, des dégradés, etc. Le compilateur de Flex 4 optimise les graphiques FXG en les transformant en tags SWF interprétés nativement par le Flash Player, ce qui améliore les performances de rendu des applications Flex.  Enfin, la nouvelle architecture Spark introduit un modèle de mise en page (layout) plus flexible. En quelques lignes de code, vous pouvez créer un nouveau mode d’agencement de composants, ou d’éléments d’un composant (une liste) en utilisant les capacités 2D ou 3D du Flash Player. Les layout peuvent être modifiés au runtime, et une même liste de photos peut donc s’afficher sous forme d’enchaînement vertical ou de carrousel 3D en modifiant la classe de layout associée au composant liste.

 

MXML devient aussi déclaratif

Flex 4 revoit aussi la façon de déclarer les états (states) d’une application ou au sein même d’un composant. Le langage de description des interfaces MXML a donc été revu et étendu pour offrir une syntaxe plus lisible. Le langage MXML devient donc MXML 2009, avec un nouveau namespace à déclarer. Par exemple, la déclaration de ce bouton indique que dans l’état ‘NewButton’, la propriété enabled passera à false:

<s:Button label="Ok" enabled.NewButton="false"/>

Le développeur Flex 4 sera aussi plus productif grâce aux nouveautés du SDK. Premièrement, les performances du compilateur sont grandement améliorées, ainsi que le support de l’ASDoc dans les documents MXML. Le data-binding, qui consiste à associer une source de données à un composant visuel, est une des grandes forces de Flex. Ce modèle est étendu avec la possibilité de déclarer du data-binding dans les deux sens en rajoutant un @ devant votre expression. Du coup un changement dans le source de données impactera le composant visuel, et vice-versa.  D’autre part, on dispose avec MXML une structure contenant des zones déclaratives et plus uniquement une structure de description d’interface. On peut ainsi avoir des éléments non visuels dans un code MXML ou encore déclarer les états de l’application.

 

Le Framework a aussi été amélioré pour tenir compte des dernières nouveautés du Flash Player. Par exemple, le lecteur de vidéo est totalement personnalisable et tient compte des recommandations open-source de l’Open Source Media Framework (OSMF). Le nouveau moteur de texte, Text Layout Framework, introduit dans le Flash Player 10 est aussi pris en charge par Flex 4. Il supportera très prochainement le « layout mirroring », soit l’affichage et l’édition de texte de droite vers la gauche.

Michael Chaize et François Tonic