- Web application
-
Application Web
En informatique une application web (aussi appelée site web dynamique) est un logiciel applicatif dont l'interface homme-machine imite un site web. L'interface homme-machine est appelée interface web. Une application web se manipule avec un navigateur web en parcourant les liens hypertexte et en actionnant des widgets contenus dans les pages.
Les webmails, les systèmes de gestion de contenu, les wikis, les blogues sont des applications web.
Les moteur de recherches, les logiciels de commerce électronique, les jeux en ligne, les logiciels de forum (Fluxxbb..) peuvent être sous forme d'application web.
Des appareils réseau tels que par exemple les routeurs sont parfois équipés d'une application web dans leur micrologiciel.[1]
Les applications web font partie de l'évolution des usages et de la technologie du web appelée abusivement Web 2.0.
Sommaire
Étymologie
Raccourci de logiciel applicatif dans la technologie du world wide web.
- Logiciel applicatif: logiciel qui met en application (automatise) les principes propres à une activité.
- web, world-wide web, traduction littérale: toile d'araignée mondiale, une technologie de partage de documents hypertexte.
La technique de base
Dans la technologie client-serveur, utilisée pour le world wide web, le navigateur web envoie des requêtess de pages Web au serveur. Le serveur répond aux demandes en envoyant les pages au navigateur web. Le navigateur affiche alors les pages à l'utilisateur.
Dans une application web les pages sont créées de toute pièce par le logiciel lors de chaque requête. Chaque hyperlien contenu dans la page provoque l'envoi d'une nouvelle requête, qui donnera en résultat une nouvelle page. Par opposition à un site web statique où les pages sont des fichiers préalablement enregistrés.
Les pages web contiennent divers widgets tels que des boutons poussoirs, des icônes et des zones de texte, permettant la manipulation de l'application. Les pages web peuvent contenir des applets.
Contrairement à d'autres logiciels, une application web mise en place sur un serveur est immédiatement utilisable par le consommateur sans procédure d'achat et d'installation sur son propre ordinateur, du moment que l'ordinateur du consommateur est équipé d'un navigateur web et d'une connexion réseau. Ceci évite des interventions des administrateur système, interventions qui sont souvent plus coûteuses que le logiciel lui-même.[2] L'application web est souvent mise à disposition du consommateur par l'éditeur du logiciel sur ses propres serveurs.[2]
L'usage du navigateur web comme partie client - un logiciel qui est disponible sur de nombreux système d'exploitation - assure la portabilité d'une application web.
Histoire
Le world wide web est un système de documentation hypertexte créé en 1993 pour les besoins du Centre européen pour la recherche nucléaire (CERN). Le premier navigateur web (NCSA Mosaic) a été créé la même année par le National Center for Supercomputing Applications (NCSA).
Le world wide web a permis aux utilisateurs de se partager des documents et des images plus rapidement que via le courrier électronique et plus facilement que via le partage de fichiers.
Le nombre grandissant de documents publiés a rendu rapidement les moteurs de recherche nécessaire pour les retrouver: L'utilisateur entre un mot clé, le serveur web effectue la recherche, puis envoie le résultat sous forme d'un document.
Les moteurs de recherche ont été mis en œuvre par extension du serveur web. En 1995, le NCSA publie la norme industrielle CGI, qui spécifie quelles sont les modalités d'extension d'un serveur web, dans le but de le brancher avec un logiciel applicatif - par exemple un moteur de recherche.[3][4]
La technologie des applications web a évolué très rapidement entre 1994 et 2000, ou plusieurs logiciels de serveurs web réservés à cet usage sont sortis sur le marché un après l'autre, ainsi que des améliorations des navigateurs web.
Les premières applications web souffraient d'une maniabilité et d'une ergonomie inférieure aux applications client. Est appelée Rich Internet Application une application web qui offre une maniabilité et une ergonomie équivalente à une application client. Le terme Rich Internet Application est apparu la première fois dans une publication de Macromedia en 2002. [5]
Utilisations
La technologie des applications web permet de nombreux usages. Les usages populaires sont les moteurs de recherche, le webmail, la vente par correspondance et les jeux en ligne.
Un moteur de recherche est une application web qui recherche des documents.
Un webmail est une application web pour recevoir et envoyer du courrier électronique.
Un système de gestion de contenu est une application web qui présente des documents. La présentation des documents est similaire à celle d'un site web, cependant les documents sont générés par le logiciel lors de chaque demande. Le système de gestion de contenu effectue les traitements nécessaires à la mise en forme et la présentation des documents.
- Un weblog est un système de gestion de contenu ou des éléments de contenu sont présentés dans l'ordre chronologique de leur date de création.
- Un wiki (de l'hawaïen wikiwiki qui signifie vite) est un système de gestion de contenu qui vise à simplifier la création collaborative des documents. Il autorise plusieurs personnes à effectuer des modifications simultanées, et est équipé d'espaces de discussion.[6]
Un site web marchand est un système de gestion de contenu, ou le contenu sont des annonces concernant des produits. Il est utilisé pour la vente par correspondance. Les visites et les opérations d'achat sont enregistrées à des fins de marketing. Les sites web marchands sont utilisés aussi bien pour la vente des produits d'une société que pour des ventes entre particuliers ou des vente aux enchères.
Un Jeu par navigateur est un jeu vidéo réalisé sous la forme d'une application web.
Un logiciel de forum permet des discussions ouvertes entre des utilisateurs: Un utilisateur écrit un message, et ce message peut être lu par tout les autres utilisateurs. Les logiciels de forums sont parfois réalisés sous forme d'application web.
La messagerie instantanée (anglais chat) permet l'échange instantané de messages texte entre différents utilisateurs. Les logiciels de messagerie instantanée sont parfois réalisés sous forme d'application web. Les messages peuvent être transmis à un autre utilisateur du logiciel, ou un téléphone portable via le short message service (abrégé SMS).
Google Maps est une application web qui permet de consulter des cartes géographiques du monde entier.
Facebook est une application web qui permet à chaque utilisateur de se constituer un réseau social (amis, associés, personnes qui partagent les mêmes centres d'intérêt).
Technologie
Dans la technologie la plus courante, l'application web s'oriente autour d'un serveur web sur lequel est branché le logiciel applicatif, le tout parfois accompagné d'un serveur de base de données. L'ensemble est appelé serveur d'application.
Le code source du logiciel applicatif est placé directement dans des pages web. ces pages sont stockées par le serveur. Lorsque le client demande une page, le serveur web va rechercher la page, puis exécute les instructions qu'elle contient. Ces instructions peuvent faire appel au serveur de base de données. Le serveur web transmet la page avec le résultat de l'exécution au client.
La transmission des informations entre le client et le serveur se fait selon le protocole HTTP, protocole également utilisé pour les sites web. Ce qui permet d'utiliser le même logiciel client - un navigateur web.
Les applications web font souvent usage du mécanisme des cookies: en réponse à une requête, le serveur envoie une informations de repérage au client (le cookie). Puis le client va lui renvoyer cette information lors de la prochaine requête. Le mécanisme est utilisé pour identifier le client et suivre les manipulations.
Les pages web peuvent en outre contenir des applets ou des ActiveX. Ce sont des morceaux de code source qui seront exécutés par le navigateur web après transmission de la page - contrairement à la majorité du code source qui est exécuté par le serveur web avant la transmission.
Le logiciel client - le navigateur web - est identique à celui utilisé pour consulter un site web. Les logiciels nécessaire pour exécuter les applets ou des widgets ActiveX sont inclus dans les navigateurs.
Logiciel serveur
Le logiciel serveur reçoit les demandes provenant du navigateur web, et effectue les traitements, puis envoie le résultat du traitement au client.
En 1991, le National Center for Supercomputing Applications publie la norme industrielle CGI, qui spécifie par quel biais un logiciel de serveur web peut être branché à un logiciel applicatif. Cette norme est initialement destiné à permettre la réalisation de moteurs de recherche.
PHP, développé par Rasmus Lerdorf, est un interprète qui peut être branché à un serveur web. L'interprète permet d'exécuter des logiciels écrits en langage PHP et incorporés dans des pages web. Le résultat de l'exécution est envoyé au serveur web, qui le transmettra au client.[7]
WebObjects, développé par Apple, est un logiciel de serveur web qui exécute le code source contenu dans les pages, code source écrit en langage Objective C.
ASP est une technologie développée par Microsoft, composée d'un interprète, qui se branche sur le logiciel serveur web Internet Information Services. L'interprète exécute le code source contenu dans les pages, code source écrit en langage VBScript.[8]
JSP est une technologie développée par Sun Microsystems, composée d'un logiciel de serveur web auquel peut se brancher un logiciel applicatif écrit en langage Java. Le logiciel applicatif est composé de pages web contenant du code source préalablement compilé.[9][10]
ASP.Net est une technologie développée par Microsoft en remplacement de ASP, composée d'un logiciel qui se branche sur le logiciel de serveur web Internet Information Services et qui exécute le logiciel applicatif. Le logiciel applicatif est composé de pages contenant du code source écrit dans un langage qui utilise le framework de programmation .Net (Visual Basic .NET ou C#), le logiciel applicatif est préalablement compilé. [11]
LAMP (Linux - Apache - MySQL - PHP) est une suite de logiciels open source qui, utilisés ensemble, permettent de réaliser des serveurs d'application. La suite est composée d'un système d'exploitation, d'un logiciel serveur web, d'un interprète, et d'un système de gestion de base de données.
Les logiciels de serveur d'application sont également utilisés pour réaliser des services web.Le navigateur web est le logiciel qui affiche les résultats envoyés par le serveur, reçoit les manipulation de l'utilisateur et les transmet au serveur.
Une applet est un morceau de logiciel incorporé dans une page web, et exécuté par le navigateur web de l'ordinateur client. Lorsque l'utilisateur actionne un widget placé dans une page web, l'applet peut alors modifier la présentation de la page (technique appelée DHTML), afficher des messages ou envoyer des requêtes au serveur d'application.
Javascript, initialement appelé LiveScript est un langage de programmation pour les applets, développé par Netscape. Les applets écrites dans ce langage sont exécutées par un interprète inclus dans le navigateur web. De nombreux navigateurs web ont un interprète Javascript.
Les premiers navigateurs web équipés d'un interprète Javascript présentaient des différences de dialecte qui font qu'une applet écrite pour un interprète en particulier n'est pas toujours comprise par un autre interprète. Pour palier à ce problème, Ecma International publie en 1999 la norme industrielle ECMA-262 ECMAScript qui spécifie la syntaxe que doivent comprendre les interprètes Javascript. [12]
Le Document Object Model (abrégé DOM) est un ensemble d'objets normalisé qui représente la page affichée, ainsi que le navigateur web. Le DOM est l'interface de programmation utilisée dans les applets pour effectuer des modifications sur la page.
AJAX est une technologie en langage Javascript dans laquelle une applet communique avec le serveur d'application sans intervention de l'utilisateur (parcours d'un hyperlien). Cette technologie est souvent utilisée pour améliorer la maniabilité d'une application web. voir aussi Rich Internet Application.
Java est un langage de programmation développé par Sun Microsystems, qui peut être utilisé pour les applets. Les applets écrites dans ce langage sont préalablement compilées, et exécutées par un logiciel branché au navigateur web, le plug-in Java (traduction littérale : qui se branche dessus). voir environnement d'exécution Java.ActiveX est une technologie développée par Microsoft ou des composant logiciels peuvent être inclus en tant qu'applet dans des pages web. Cette technologie nécessite un système d'exploitation Windows sur l'ordinateur client.
Flash est une technologie développée par Adobe. Un logiciel branché au navigateur, le plug-in Flash permet d'afficher des animations, des images vectorielles, des vidéos, et exécuter des applets. Il comporte un interprète pour des applets en langage de programmation ActionScript, un langage similaire à Javascript. Cette technologie est d'usage courant pour les jeux vidéo en ligne.
Écrire des applications web
Articles connexes
- Site web
- Service web
- AJAX
- Interface web
- Catégorie:Application web
Notes et références
- ↑ Administration du routeur Linksys
- ↑ a et b exemple de Google apps Google apps, une suite bureautique en ligne
- ↑ (en)A brief history of CGI
- ↑ (en)W3Org, the Common Gateway Interface
- ↑ (en)Next generation rich client
- ↑ Definition, Wiki
- ↑ Histoire de PHP
- ↑ (en)ASP History and information
- ↑ (en)A short history of Java Server Pages
- ↑ (en)JSP Basics
- ↑ (en)What is ASP.Net - O'Reilly
- ↑ (en)ECMA-262 specification
- Portail de l’informatique
Catégories : World Wide Web | Technologie web | Application web | Logiciel | Web 2.0
Wikimedia Foundation. 2010.