
SALTO-Consulting vient de réaliser une étude comparative entre Flex et SilverLight.
Cet article vous en présente les conclusions.
Contexte : Refonte d’une application pour laquelle les principaux besoins ergonomiques sont les suivants :
- Onglets & Slider,
- DataGrid,
- Navigation 3D (avec ‘Point de vue’ et outil « Caméra’) dans un entrepôt
- Bascule en 2D ‘Perspective’ sur une zone de l’entrepôt
- Zoom In – Out par zone d’écran
- Composant « Carton » (Face d’ouverture – Intégration d’image « symbole » – Dimension – etc.)
- Composant « Alvéole » (Type de Zone – Dimension – etc.)
- Alvéole de déplacement interdite en fonction de caractéristiques carton
- Déplacement de cartons par Drag & Drop d’une zone à une autre, d’une allée à une autre à partir de la vue 2D
- Information « Bulle » lors du survol d’alvéole pendant le Drag & Drop
- Rotation de cartons dans une alvéole
- Empilage de cartons par « Cliqué – Glissé »
- Charts & Report
- etc.
Contrainte Technique : S’intégrer avec un serveur J2EE – Volumétrie importante d’échange d’information entre le client et le serveur
1er constat : SilverLight s’intègre au serveur HTTP Apache. Un effort minimaliste de configuration est nécessaire pour la reconnaissance par Apache des types de fichier propre à SilverLight. Donc pour les réfractaires à IIS, pas de problème.
2ème constat : Même si SilverLight est « MicroSoftien », il existe des projets « Open Source » et « gratuit ». De ce point de vue, l’ouverture « Open Source » Flex, au moins dans le contexte, ne présente pas un réel avantage.
3ème constat : Les architectures logicielles des 2 solutions sont très proches (pour ne pas dire semblables).
4ème constat : Il est possible, grâce à l’intégration de composants ou bibliothèques « Open Source » et « Libre », de réaliser les besoins ergonomiques dans les mêmes charges de travail pour l’une ou l’autre des solutions
5ème constat : Même s’il existe une différences de prix entre FlashBuilder (outil de développement Flex) et VisualStudio (outil de développement SilverLight), celle-ci n’est pas significative pour discriminer l’outil MicroSoft.
Alors où se trouve la différence ? Dans la facilité d’intégration avec Java, tant d’un point de vue technique que d’un point de vue développement.
Point de vue développement : FlashBuilder se présente sous la forme d’un Plug-In intégrable dans tous les IDE de référence Java (Eclipse – NetBean – etc.). Par contre, VisualStudio est une application autonome avec laquelle il est possible bien sur de faire du Java, mais sur Windows (ou Mono !!!), ce qui nécessitera une conduite du changement pour les développements ou au mieux l’utilisation de 2 studios de développement (Attention au dimensionnement mémoire des postes de développement)
Point de vue technique : Théoriquement, les technologies d’échanges entre SilverLight (plus généralement MicroSoft) et Java sont XML ou les WS ce qui peut s’avérer vite pénalisant dans un contexte de volume d’échange de données, ce qui n’est pas le cas pour Flex qui propose le protocole « binaire » AMF. Cependant, il existe un FrameWork (« Open Source » et « Libre ») permettant de faire de l’AMF avec MicroSoft, mais dont l’intégration ne nous a pas semblé « aisée » (loin de là) et dont les références de réalisation ne sont pas évidentes à trouver (c’est un euphémisme).
Pour conclure, halte au débat Flex – SilverLight.
Si vous être .Net, SilverLight est votre solution. Sinon, Flex est le bon choix.


















