JavaFX en tant que plate-forme RIA (Rich Internet Application)
JavaOne s'est achevé vendredi dernier. Les participants sont venus du monde entier et de tous les horizons économiques : électronique grand public et jeux, informatique d'entreprise, exploration spatiale, machines-outils, industrie automobile, enseignement supérieur, etc. Comme le réseau lui-même, Java propose des solutions pour pratiquement tout le monde, en tout lieu.
Les
principales annonces de cette année avaient trait au rôle
de Java dans l'évolution des applications Internet riches
(RIA). Qu'est-ce qu'une application RIA ? Tout dépend du
point de vue adopté : en ce qui me concerne, il s'agit
de toute application connectée à un réseau
fonctionnant de façon autonome, en général sans
être rattachée à un navigateur Web, et que
l'utilisateur peut exécuter sans être relié au
réseau.
Au premier abord, je dirais que Java a toujours été une plate-forme RIA avant même que le besoin ne s'en fasse ressentir. Les premiers applets Java faisaient preuve d'interactivité mais pêchaient par leur complexité de développement ainsi qu'en termes de niveau de performance, tout au moins au début. C'était l'époque où un navigateur suffisait (le langage Javascript n'est apparu que plus récemment).
Toutefois, les applications basées sur un navigateur ont maintenant atteint leurs limites en termes de complexité et de performance, et les propriétaires de contenus recherchent des niveaux d'engagement supérieurs, par exemple via la vidéo haute définition ou l'interactivité sophistiquée. Les développeurs, quant à eux, exigent plus d'innovation : le navigateur est un modèle de programmation admirablement convivial mais qui se prête mal au déploiement d'applications RIA/déconnectées.
Les applications Internet riches s'appuient également sur l'évolution des "business models", ce qui se sait moins. Ainsi, de nombreuses sociétés intervenant sans le secteur des applications RIA s'efforcent de se libérer de l'emprise des navigateurs Web et des moteurs de recherche. En effet, ces outils présentent une menace à la concurrentielle à cause des paramètres par défaut et des entreprises qui les proposent. On constate aujourd'hui une demande grandissante pour les applications installées localement qui mettent en place un engagement riche, direct et permanent vis-à-vis des consommateurs. Personne n'est prêt à payer une redevance pour rencontrer ses propres clients.
En gardant cette considération à l'esprit et alors que nous cherchions à réinventer la plate-forme Java, nous avons été confrontés à un ensemble cohérent de demandes. Les spécialistes du codage ne sont pas les seuls concernés. Propriétaires de marques sportives désireux d'impliquer leurs aficionados, agences publicitaires souhaitant remédier aux défauts de leur navigateur Web, artistes, entreprises et fabricants : tout le monde poursuit l'objectif d'attirer les consommateurs par l'intermédiaire du réseau. Ces publics cibles expriment des demandes quasiment identiques au sujet des plates-formes RIA ; ils attendent de cette technologie :
un accès à chaque utilisateur d'Internet quel que soit son mode de connexion (de l'ordinateur de bureau au téléphone portable, sans négliger les nouveaux périphériques) ;
un niveau de performance élevé et la possibilité d'impliquer les professionnels de la création dans le processus de conception ;
l'utilisation pleine et entière des compétences et de l'infrastructure d'entreprise existantes ;
une gratuité totale et la disponibilité en Open Source ;
le contrôle et la possession des données appartenant aux propriétaires de contenus.
Lors de l'événement JavaOne de la semaine dernière, nous avons abordé tous ces points pour aboutir aux réflexions suivantes :
En premier lieu, les développeurs d'applications RIA cherchent à atteindre tous les consommateurs dans le monde entier et sur tout type de périphériques.
Pourquoi ? Tout simplement parce que les consommateurs peuvent voir ce marché de leurs propres yeux quel que soit l'écran utilisé. Ordinateur de bureau, téléphone portable, navigation sur un périphérique personnel ou un livre numérique : faites votre choix. Le marché ne se limite pas aux écrans divers et variés que nous utilisons au quotidien.
Cela
dit, Java a vu sa popularité croître au cours des
dernières années, en premier lieu sur les ordinateurs
de bureau, comme le montrent les chiffres des téléchargements
du runtime, soit 40 à 50 millions par mois pour les
nouvelles applications Java et plus d'un milliard de mises à
jour chaque année.
L'adoption
de la plate-forme Java prend maintenant le pas sur celle de
Microsoft Windows : notre environnement
d'exécution Java (JRE) est pré-chargé sur
pratiquement tous les postes de travail Windows (de HP à Dell
ou encore Lenovo), mais aussi sur les configurations Macintosh,
Ubuntu, Fedora, SuSe, Solaris et OpenSolaris. En outre, des
milliards (oui, vous avez bien lu) de périphériques
mobiles et sans fil sont dotés d'un JRE : la liste est
infinie, des tableaux de bord aux systèmes de navigation
automobile, sans oublier Kindle, le lecteur de livres électroniques
d'Amazon (c'est une plate-forme Java, le saviez-vous ?).
En clair, la plate-forme Java permet de toucher un plus grand nombre de personnes que tout autre logiciel à ce jour.
En deuxième lieu, les développeurs d'applications RIA exigent À LA FOIS un bon niveau de performance mais aussi les fonctionnalités et la simplicité nécessaires.
Pourquoi ? Parce que les propriétaires de contenus et les développeurs d'applications souhaitent engager les consommateurs ainsi que les artistes et professionnels de la création dans le processus de travail.
Dans le passé, Java n'a pas brillé par sa simplicité. C'est pourquoi nos équipes ont réécrit le modèle d'applet et voué tous leurs efforts à accélérer remarquablement la durée de téléchargement du nouveau JRE sur une page Web (téléchargez une version bêta ici), à doper ses performances pour les niveaux complexes d'activité et à le mettre à la portée des consommateurs les moins avertis. Nous avons aussi simplifié Java à l'aide d'un langage de script appelé JavaFX script qui permet aux professionnels de la création d'interagir avec les développeurs pour établir une expérience riche en fonctionnalités. Ils peuvent dans le même temps intégrer la chaîne d'outils (de l'ébauche d'interaction à la manipulation d'images) utilisée dans le monde entier par les designers et les artistes du numérique.
Je
suis vraiment heureux aujourd'hui que nous ayons résolu le
problème d'installation du poste de travail en séparant
les applets JavaFX de la page Web à l'aide d'un simple
glisser-déposer (cliquez sur l'image ci-dessus pour assister
à une démo). Les développeurs peuvent
dorénavant se passer de leur navigateur grâce à
l'installation rapide d'applets sur leurs bureaux : une fois
l'applet déposée, les propriétaires de contenus
entretiennent une relation directe avec leurs consommateurs.
Vous aurez aussi remarqué que nous ajoutons des codes audio et vidéo à Java sur toutes les plates-formes qu'il exécute. Nous avons ainsi répondu à une autre difficulté rencontrée par les développeurs d'applications RIA, à savoir la prise en charge des médias en temps réel (cliquez ici pour une démo de haute performance vidéo).
En troisième lieu, les sociétés cherchent à réutiliser leurs compétences et ressources Java existantes par une migration vers les applications RIA.
Chaque entreprise ou presque emploie des développeurs qui maîtrisent Java : ce langage Internet est encore enseigné de par le monde et s'avère omniprésent dans les infrastructures d'entreprise. Au moment où les entreprises s'apprêtent à engager leurs clients sur les plates-formes RIA, leurs compétences existantes et une connexion aux systèmes en place donnent à la communauté Java la possibilité exceptionnelle de construire à partir des ressources disponibles plutôt que de tenter de les remplacer.
Cette familiarité permet aussi aux entreprises et aux équipes de développement de collaborer pour se concentrer dans la relation avec les consommateurs. Les équipes informatiques échappent ainsi aux exigences de renouvellement d'équipement : les développeurs JavaFX s'intègrent simplement aux infrastructures d'entreprise existantes et n'ont plus à exiger de nouveaux systèmes destinés aux applications RIA.
En quatrième lieu, les développeurs d'applications RIA veulent des plates-formes gratuites et ouvertes.
Pourquoi gratuites ? Parce que les développeurs
répugnent à encombrer leurs applications de
dépendances sujettes au paiement de royalties, ou à
recourir à des technologies qui leur imposent les modalités
de connexion des consommateurs. Les communautés de
développeurs construites en vase clos sont sans
fondement : elles font place à des communautés
d'utilisateurs -
dans
ce cas précis, le choix et la désignation des
développeurs conduira à la création de
débouchés étendus pour les applications RIA.
Comme toutes les plates-formes logicielles de Sun, JavaFX sera
disponible librement en Open Source et livrée sous licence
GPL (version 2).
Si vous pensez que les logiciels libres et ouverts sont l'apanage des experts du secteur, détrompez-vous : nous assistons à un mouvement croissant de nations en développement qui équipent leur structure d'enseignement supérieur et leurs administrations de plates-formes Open Source. Pourquoi ? Vous préservez ainsi votre liberté de choisir et de construire votre propre système de façon autonome : il n'est nullement nécessaire de créer des dépendances vis-à-vis d'un logiciel propriétaire si vous pouvez l'éviter.
En dernier lieu, il nous faut bien admettre que le Web 2.0 vaut avant tout par les données qu'il propose (et non par ses applications). De plus, ces données sont LES VÔTRES.
Si
vous avez observé le réseau social avec autant
d'attention que nous, vous avez conscience de l'importance des
instruments à déployer et des objectifs poursuivis
dans la création d'une activité commerciale sur le
Web. En cernant l'usage que font les consommateurs de votre produit,
qu'il s'agisse d'une simulation
de classement sportif ou d'une application bancaire grand
public, vous permettez la création de modèles
commerciaux innovants, des prestations de services à haute
valeur ajoutée, l'insertion de publicités plus
lucratives : les informations disponibles facilitent la prise
de décision et la création à un moindre coût
(autant dire un coût
par action supérieur).
Cependant, la plupart des applications Internet riches sont construites puis déployées à l'aveuglette. Les développeurs travaillant au delà des limites de leur navigateur sont confrontés à deux problèmes différents : soit ils n'ont plus d'informations relatives au comportement de leurs utilisateurs, soit ils doivent s'en remettre à un prestataire de services technologiques qui impose sa présence au sein du flux de données. Certains de ces prestataires sont aussi en compétition avec des développeurs de contenus.
Grâce au projet que nous avons nommé Project Insight, nous serons en mesure d'instrumentaliser la plate-forme Java afin de permettre aux développeurs d'exploiter le flux de données généré par leurs propres contenus RIA. Les développeurs JavaFX pourront enfin se consacrer à leurs modèles commerciaux plutôt que de devoir améliorer des modèles concurrents.
_______________________
En conclusion, quel parti Sun peut-il tirer du succès de JavaFX ?
Par définition, ce succès nous est plus précieux que l'adoption d'une plate-forme concurrente (concept connu sous l'appellation « valeur d'option positive ») et que l'infrastructure propriétaire utilisée pour exécuter JavaFX (rappelez-vous que les applications RIA s'appuient sur des back-ends Internet riches en contenu, une notion qui reste à définir !). En fin de compte, toutes les futures options liées aux applications RIA seront proposées gratuitement puisque la bataille ne se livre pas sur l'aspect du prix.
De mon point de vue, la plate-forme aux meilleures perspectives sera celle qui laissera le champ libre aux développeurs en vue de conquérir de nouveaux marchés et débouchés mais aussi de profiter de l'expérience de leurs utilisateurs suivant leurs propres critères et non ceux des fournisseurs. L'objectif d'une indépendance des développeurs est justement un point sur lequel nous pouvons nous distinguer. Toutes nos activités tendent vers ce but.
J'invite les développeurs à en découvrir plus sur le sujet sur le site Web JavaFX.com. Enfin, NetBeans est tout aussi digne de votre intérêt : au même titre que Java, il semble déjà promis à un grand avenir...
Posted on 02:36PM mai 13, 2008 |





















