Bibliothèques JavaScript, ICEfaces, Flash d'Adobe, Microsoft Silverlight et maintenant HTML5, la compétition mondiale pour la domination des réseaux est entrée dans une nouvelle ère : celle des applications Internet riches (RIA en abrégé, également appelée application Internet riche en chinois).
Le but de cet article est de définir ce qu'est la RIA, d'expliquer pourquoi le Web a commencé à se rapprocher de la RIA, d'explorer les différents cadres RIA qui existent aujourd'hui, de fournir un aperçu de certains des avantages et des inconvénients de chaque cadre et de discuter de ce qu'est la RIA. à quoi ressembleront ces nouvelles technologies dans le futur.
Qu’est-ce qu’une AIR ?
Ce qu'on appelle RIA, ou application réseau riche, fait référence à une application réseau qui peut fonctionner comme un programme de bureau. Avant l’émergence des RIA, la plupart des applications Web étaient créées avec des pages statiques.
Sumo Paint est un RIA basé sur Flash avec des capacités d'édition graphique comme Photoshop.
Contrairement aux applications de bureau, toute interaction avec une page Web nécessite souvent le rechargement d'une toute nouvelle page. Les applications de bureau, en revanche, offrent une bien meilleure interactivité utilisateur car tout le traitement s'effectue sur la machine de l'utilisateur lui-même, offrant ainsi une expérience utilisateur plus transparente.
En conséquence, les développeurs de logiciels ont commencé à se demander : « Notre produit devrait-il être une application de bureau ou une application Web ?
C’est toujours une question légitime, car les deux types d’applications ont leurs propres avantages et inconvénients.
Les applications de bureau offrent une interaction utilisateur fluide, mais les logiciels sont vendus et souffrent de problèmes de publication et de mise à jour.
Les applications Web, en revanche, sont facilement disponibles en ligne, exemptes des problèmes associés aux versions et mises à jour des logiciels, mais offrent une très mauvaise expérience d'interactivité utilisateur.
Alors, comment tirer le meilleur parti des deux mondes ?
RIA est le meilleur des deux mondes. RIA est diffusé via Internet et propose des interactions utilisateur très riches. Grâce à l'émergence d'Ajax, une méthode permettant aux applications Web d'envoyer des requêtes au serveur sans actualisation, de nouvelles technologies ont émergé pour rejoindre le mouvement RIA.
Sur la base de ces technologies, plusieurs frameworks ont vu le jour pour aider les développeurs à créer et déployer des applications Web riches, telles que les bibliothèques JavaScript, ICEfaces, Adobe Flash 4 (le prédécesseur de Flex 3), Microsoft Silverlight et HTML5.
Discutons du cadre RIA un par un.
Bibliothèque JavaScript pour applications Web
Les bibliothèques JavaScript telles que jQuery et MooTools font partie des premières technologies capables de véritablement aider à déployer des applications Web riches, fluides et interactives. Ils fournissent un framework RIA qui gère les fonctionnalités de l'interface frontale en tirant parti des scripts côté client. Il s'agit de fichiers Javascript de base intégrés à des fonctionnalités utiles testées sur plusieurs navigateurs. Vous pouvez utiliser Ajax, ainsi que gérer les interactions courantes basées sur des événements pilotées par l'utilisateur, telles que l'affichage et le masquage de contenu.
Les plus populaires actuellement sont jQuery (en particulier en utilisant jQuery UI), MooTools, YIU (Yahoo User Interface Library) et EXTJS. Ces bibliothèques incluent des composants RIA tels que des grilles, des graphiques et des éléments de formulaire complexes, ainsi que des outils de gestion d'Ajax. Le plus fascinant est que la plupart des bibliothèques JavaScript destinées au développement Web sont open source.
Si vous ne souhaitez pas acheter un environnement de développement intégré (IDE), mais souhaitez tout de même une fonctionnalité RIA magnifique et professionnelle sur votre site Web, les bibliothèques JavaScript sont un excellent choix.
Les sites Web qui utilisent des bibliothèques JavaScript incluent Google, Digg, Yahoo, Amazon, Microsoft, Twitter et Best Buy.
Visages de glace
ICEfaces est une extension du framework JavaServer Faces (JSF) standard conçu pour simplifier le flux de travail du programmeur en supprimant JavaScript de l'équation. En d'autres termes, ICEfaces gère tout le JavaScript/Ajax pour vous via l'interface d'application Java. En supprimant l'introduction complexe de ces fonctions JavaScript personnalisées, la tâche de création d'applications Web riches est grandement simplifiée.
Si la majorité de votre équipe est composée de développeurs Java, ou si votre application Web ne nécessite pas de composants complexes que les autres ICEfaces n'ont pas, ou si votre application Web est pilotée par des événements, alors utiliser ICEfaces est un bon choix. Si votre application Web est pilotée par des événements, assurez-vous de comprendre qu'ICEfaces ne fournit pas une véritable technologie « server push », qui est prise en charge par HTML5, Flash Builder 4 et Silverlight. Cependant, ICEfaces utilise une méthode d'interrogation longue pour simuler la technologie push du serveur.
Les sites utilisant ICEfaces incluent Boeing, la NASA, Union Pacific, T-Mobile et Bank of America.
Adobe Flash Builder 4
Flash existe depuis longtemps, mais la création d'applications Web entières à l'aide de Flash était fastidieuse jusqu'à l'introduction de Flex, une extension de Flash qui fournit des composants Web RIA.
La chose la plus intéressante à propos d'Adobe Flash Builder 4 réside dans ses fonctionnalités multiplateformes et multi-navigateurs, permettant au programme de s'exécuter de la même manière sur tous les systèmes d'exploitation et tous les navigateurs. Comparé à JavaScript, où les navigateurs disposent de différents moteurs JavaScript qui gèrent et traitent le code, Flash d'Adobe n'a qu'un seul moteur, que les utilisateurs installent via le plug-in du navigateur Adobe Flash (qui est généralement ce dont ils disposent).
Les applications Flash Builder 4 peuvent le faire car elles sont intégrées à la page HTML, ce qui signifie que le navigateur lui-même n'a aucun impact sur les performances de l'application. Cela signifie que vous pouvez exécuter même les applications Web les plus complexes sur IE6 si vous le souhaitez. (C'est bien sûr simple, car le plug-in/moteur Flash est fréquemment mis à jour et ne dépend donc que légèrement de la version du plug-in de l'utilisateur).
Ces applications sont généralement accompagnées d'un traitement côté serveur, tel qu'un traitement back-end Java, et nécessitent Flash Builder 4 IDE pour le développement.
Si votre équipe développe principalement en Java (car il fonctionne bien avec Java) ou si votre application utilise une architecture événementielle, vous pouvez choisir Adobe Flash Builder 4.
Les sites Web qui utilisent Flash comme application Web incluent Mint.com, Flickr et Hyundai.
Lumière argentée
Silverlight est essentiellement la version Microsoft d'Adobe Flex/Adobe Flash. Il a gagné du terrain, mais ne semble pas avoir atteint le niveau de popularité d'Adobe Flash.
Les applications Silverlight sont évidemment liées au backend .NET car il s'agit d'un produit Microsoft. Cela signifie que vous devez penser à l'intégration entre Silverlight/.NET et Adobe Flex/[certains scripts côté serveur comme PHP].
Si votre application Web nécessite des graphiques complexes, ou si votre équipe est principalement composée de développeurs .NET, ou si votre application utilise une architecture basée sur les événements, vous pouvez choisir Silverlight.
Sites Web qui utilisent Silverlight, tels que Netflix.
HTML5
HTML5 est le dernier développement du mouvement RIA. HTML5 est essentiellement la meilleure fusion de HTML4, JavaScript, CSS, bibliothèques de code Javascript et Falsh, exploitant le modèle API dans une seule spécification. HTML5 est une technologie ouverte, ce qui signifie qu'il n'y aura pas un seul organe directeur comme Flash pour Adobe ou Silverlight pour Microsoft.
Étant donné que la spécification HTML5 n'est pas encore terminée et qu'IE9 n'est pas encore publié, vous devrez encore attendre un peu plus longtemps pour créer des applications Web de niveau production.
Actuellement, tous les principaux navigateurs, à l'exception d'IE8, prennent en charge HTML5. Étant donné qu’IE8 occupe une part importante du marché des navigateurs, il est très difficile pour HTML5 de devenir courant avant la sortie d’IE9.
Une fois que HTML5 est largement pris en charge, si vous ne souhaitez pas acheter et apprendre un IDE (requis pour les frameworks comme Flex et Silverlight), si votre application utilise une architecture basée sur les événements ou si vous préférez utiliser les fonctionnalités HTML et JavaScript intégrées. Fonctionnalités API à la place L'utilisation d'une bibliothèque JavaScript tierce, puis l'utilisation de HTML est un bon choix.
Bien que les graphiques soient bien gérés en HTML5, l'utilisation de Flash et Silverlight pour gérer des graphiques et des animations complexes reste pour le moment l'option la plus simple et la plus rapide.
Les applications HTML5 sont-elles l’avenir d’Internet ? Pas exactement. Tant que les développeurs Web créatifs et innovants continueront à créer quelque chose de spécial, de nouvelles technologies émergeront toujours, capables de faire des choses incroyables que HTML5 ou toute autre technologie Web ne peut pas faire.
Les bibliothèques JavaScript, ICEfaces, Flash, Silverlight et HTML5 existent avant tout pour leur créativité et leur innovation. Les futurs réseaux seront constitués de nombreuses technologies coexistantes, tout comme c’est le cas aujourd’hui.
Source : sixrevisions.com
Compilé par : MazingTech
Merci à MazingTech pour votre contribution