Technologies

Flex 4.5 : l’avenir du développement web ?

Publié le : Auteur: Manuel EVENO Laisser un commentaire
technologies

Avec la sortie de Flex 4.5, Adobe s’attaque au marché juteux des smartphones et des tablettes. La technologie Flex était déjà une très bonne réponse pour des développements de type RIA (Rich Internet Application) voire RDA (Rich Desktop Application) avec la technologie Adobe AIR. Avec cette offre, Flex permettait déjà de mutualiser du code entre une application Internet et une application cliente installée sur un poste fixe ou nomade, mais avec cette dernière version, Adobe fait un pas de plus.

Write Once, Run everywhere

Dans la version 4.5, Flex est d’ores et déjà compatible avec les tablettes Android sous Honeycomb (Mototrola Xoom et Samsung Galaxy Tab par exemple), avec la tablette BlackBerry PlayBook de RIM et la compatibilité avec l’iPad d’Apple ne saurait trop tarder.

On observe déjà certains développeurs s’aventurer à tester cet aspect multi-plateforme et à déployer une même application (un même code !) sur différentes tablettes avec succès, cela laisse rêveur sur les possibilités à plus grande échelle. On imagine bien qu’il y a des limitations à ce genre d’exercice mais les développements Flex à destination des différents canaux (web, desktop, mobile) peuvent désormais partager une grande partie du code applicatif.

Flex et les entreprises

Avec cette nouvelle orientation de l’offre, on constate que la technologie Flex possède une certaine légitimité pour se positionner comme un choix technologique d’entreprise. Flex nous promet donc une diminution des coûts liés aux développements et une rationalisation des compétences nécessaires pour maintenir les applications d’interfaces (IHM) d’un système d’information. S’ajoute à cela la productivité affichée de la technologie, cette perspective a de quoi séduire plus d’un DSI.

De plus, là ou la plateforme JEE s’éparpille considérablement dans son offre de solution de développement orienté web, Flex apparait comme une solution tout à fait pertinente et certainement à étudier dans le cadre d’une étude de choix technologique d’une entreprise.

Reste que Flex ne répond qu’à la partie présentation (IHM) du SI. Pour le reste, il est toujours nécessaire de s’appuyer sur une autre plateforme comme JEE. Dans cette perspective, Flex nous contraint malgré tout à maintenir deux orientations technologiques et deux pôles de compétences au sein de l’entreprise ce qui représente un coût. Reste à estimer si les promesses de Flex compensent bel et bien le surcoût engendré.

L’autre aspect qui pourrait faire surgir une interrogation, ce sont les performances. Il est bien évident que les performances d’une application native (c’est-à-dire développée directement avec la technologie de la plateforme) seront meilleures, au moins dans un premier temps. Malgré tout, les diverses démonstrations auxquels on peut assister dans les conférences et les vidéos qui circulent sur Internet font état de performance tout à fait correcte. De plus, Il est fort à parier qu’Adobe va multiplier les efforts pour améliorer les performances de sa technologie. Il faut donc évaluer si on est prêt à payer le prix d’une légère latence dans l’exécution de l’application en comparaison d’une diminution des coûts liée à l’utilisation de Flex.

Les développeurs ont d’ailleurs tout autant intérêt à investir dans la technologie Flex car elle leur offre un potentiel d’employabilité très intéressant sur le marché. Si elle est de plus adossée à une solide compétence J2EE, cette personne peut tout à fait nous écrire à cette adresse 🙂  !

Flex : la solution ?

On pourrait parler de la menace de l’arrivée de HTML 5 qui pèse sur la technologie Flash en elle-même, qui est le cœur sur lequel repose l’exécution de Flex mais HTML 5 est loin d’offrir toutes les fonctionnalités proposées par Flash et encore plus loin des possibilités de développements d’applications multiplateformes proposées par Flex. A contrario, il faut bien sûr qualifier si l’utilisation d’une technologie comme Flex convient bien aux besoins de l’entreprise …

Il ne faut pas oublier non plus que miser sur une technologie comme Flex est un engagement très structurant pour l’avenir et que, malgré le caractère Open Source d’une offre comme celle d’Adobe, cela nous rend captif d’un éditeur en particulier et d’une technologie spécifique.

Il existe d’autres solutions concurrentes qui offre tout ou partie des possibilités avancées par Flex : Citons tout d’abord Microsoft Silverlight, le pendant dans la technologie .Net de l’offre Flex. Cette offre qui a été créé par Microsoft pour justement contrer et offrir une alternative à Flex dans son éco-système propre, est en train d’arriver à maturité dans ses dernières versions. Le framework GWT (Google Web Toolkit) qui propose une approche « full Java », même s’il n’offre pas encore la possibilité de créer une application type client desktop, permet de la diffusion multi-canal sous la forme d’application web, adaptable au client mobile. D’autres frameworks RIA basés sur Javascript, permettent aussi d’arriver au même résultat.

Un aspect qu’il ne faut pas oublier d’évaluer avec ces technologies est bien sûr l’outillage associé, qui joue un rôle prépondérant dans la productivité affichée par certains éditeurs. Il est vrai que les offres qui sont portées par de grands éditeurs comme Adobe, Microsoft ou Google, bénéficient souvent d’un outillage plus évolué et plus complet qu’une offre portée uniquement par une communauté Open Source.

C’est donc bien l’ensemble d’une offre qu’il faut analyser avec les avantages, les inconvénients et les contraintes propres à chaque contexte …