
Bienvenue sur Prestataires.com,

Le n°1 français de la recherche de prestataires informatiques, Internet et multimédia.

Cliquez ici pour trouver un prestataire pour un projet de développement Web.
|

Dossier Développement Web


Le développement web peut prendre différentes formes : de la simple page statique à la
page dynamique avec connexion à une base de données.
Nous allons tracer ici un bref aperçu de différentes technologies possibles dans la
programmation côté client ou côté serveur.

Le langage HTML (HyperText Markup Language) ou XHTML (eXtended HTML)
Toute page Web comprend une base de langage HTML ou XHTML. Il s'agit d'un langage de balisage
qui définit essentiellement la structure de la page web (titres, tableaux, paragraphes,
etc.).
C'est un langage qui permet de créer des hyperliens, à savoir des liens d'un document à un
autre ou d'un endroit d'un document à un autre endroit du même document.
Au départ ce langage ne définissait que la structure de la page mais très vite se sont
rajoutées des balises (ou tags) qui s'occupaient de mettre en forme le document (mise en gras,
en italique, choix d'un police de caractère, ...).
Depuis sa version 4, le langage HTML s'accompagne des CSS (Cascading Style Sheets - Feuilles de style en cascade)
qui sont des styles qui se chargent de la mise en forme de la page.
Le XHTML est la dernière évolution du HTML adaptée aux normes XML.

Les limites du HTML
Une page web créée en HTML est totalement statique et n'offre aucune possibilité
d'interaction avec le visiteur. Chaque page doit être créée au préalable et doit être
manuellement mise à jour.
- Portabilité
- Le langage HTML est multi-plateformes. Tous les navigateurs web reconnaissent le langage
HTML (c'est le moins qu'ils puissent faire...) de base, seuls certains tags sont propres à
certains navigateurs.
- Mise en place
- Le langage HTML a cependant l'avantage d'être aisé à mettre en place et ne demande pas des
compétences techniques très poussées. De plus, ces pages sont d'un traitement très léger et
rapide par le serveur.
Il faut donc autre chose pour ajouter de l'animation ou de l'interactivité dans la page web.

Le XML (eXtended Markup Language)
Le langage de balisage XML peut également servir de base à
une page web. Le fichier XML contiendra le contenu de la page web. Ce fichier sera lié à un
fichier XSL (Feuilles de style XML) qui mettra en forme les données du fichier XML.
La plupart du temps, la page web ne sera pas basée sur un fichier XML natif mais celui-ci
sera généré dynamiquement par un des langages de programmation web ci-dessous.

L'insertion d'objets
Une première technique pour rendre une page web plus dynamique est d'y insérer des objets.
Les objets seront insérés dans la page HTML grâce aux tags <object>, <img>, <applet> ou <script>.

Images
Un premier type d'objet sont les images qu'on intègre dans la page web. Les images sont
généralement statiques sauf les gifs animés.

Multimédia
L'intégration de documents multimédia (son ou vidéo) va également permettre de 'dynamiser' un
site mais ce genre de fichier est
souvent très lourd au téléchargement.

Animation Flash
Flash est un programme qui permet de créer des animations
dans un format vectoriel propriétaire relativement léger. Le programme génère un fichier avec
l'extension .fla qui est le fichier de travail et qui sera 'compilé' en un fichier avec
l'extension .swf. Swift est un autre programme générant des fichiers swf hors de la sphère
Macromedia.
Dans une page web, une animation Flash (fichier avec extension .swf) peut être intégrée comme
partie de la page (une publicité, un menu, ...) ou l'ensemble de la page peut être en flash mais
il y aura toujours un squelette HTML.
Flash permet de créer des animations de qualité, permet une certaine interaction avec
l'utilisateur grâce au langage de programmation ActionScript. Les dernière versions de Flash
permettent également l'interfaçage avec une base de données.
- Portabilité
- L'utilisation de Flash dans une page web nécessite l'installation du plug-in "Flash player"
qui n'est pas disponible pour tous les systèmes.
- Mise en place
- La création d'une animation Flash est une technologie complète en soi. La complexité
dépendra du résultat attendu mais un beau résultat peut déjà être obtenu sans trop de difficultés.
Une fois le fichier .swf créé, l'intégration dans une page HTML ne pose pas trop de problèmes.
- Performance
- Une page en Flash est plus lourde qu'une page HTML qui ne contiendrait que du code HTML mais
reste beaucoup plus légère que la plupart des fichiers multimedia.
- Utilisation
- Avec Flash, il est possible de créer n'importe quoi. Mais on privilègiera des interfaces
dynamiques (déplacements d'images, petites animations). En tant que partie d'une page, Flash se
retrouvera fréquemment dans la création de bannières publicitaires et de petits jeux.

Applet Java
Il est également possible de créer des petits programmes avec interface dans un
langage de programmation comme Java. Ces petits programme sont
appelés Applets ou appliquettes. Ils sont complètement autonomes mais
éventuellement paramétrables et s'intègrent dans une page web. Ils sont téléchargés avec la page
web et exécutés par l'ordinateur client.
- Portabilité
- Le code est indépendant de la plateforme grâce à la machine virtuelle Java (un petit plug-in
Java).
- Mise en place
- La programmmation en Java est complexe et nécessite de bonnes connaissances en programmation.
De nombreux outils de développement existent.
- Performance
- Les performances sont limitées par le téléchargement et l'implantation de la machine
virtuelle.
- Utilisation
- Sur le web, on trouvera un grand nombre d'application aux applets : des jeux, des
'tchats', des menus... Les applets gèrent bien le multi-utilisateur. Les fonctionnalités des
applets sont strictement limitées au niveau sécurité (par exemple, un applet ne pourra jamais
lancer une application sur la machine du client).
Attention, tous les niveaux de sécurité de tous les navigateurs n'acceptent pas le lancement
d'applets.
Par ailleurs la machine virtuelle Java gère elle-même les allocations de mémoire (en langage C,
la mémoire est gérée manuellement), ainsi les applications Java prennent plus de ressources.

ActiveX
Les ActiveX sont une solution de création d'applications développée par Microsoft. Les
principes de fonctionnement sont très semblables au fonctionnement des applets.
- Portabilité
- Le code est dépendant de la plateforme le plus souvent (généralement système Windows et
navigateur Internet Explorer)
- Mise en place
- La programmmation peut se faire avec plusieurs langages (C++, Visual Basic,
Java) mais nécessite de bonnes connaissances en programmation.
De nombreux outils de développement existent.
- Performance
- Les performances sont bonnes grâce à la possibilité de compilation et la possibilité de
mémorisation du programme chez le client.
- Utilisation
- Les possibilités d'utilisation des ActiveX sont énormes et il y a peu de limitations
sécuritaires. A cause de cela et du lien avec une plateforme, les ActiveX seront souvent
réservés aux Intranets.

La programmation web côté client
Les objets ne fournissent pas toutes les solutions aux besoins d'interactivité et de
dynamisme des sites ou sont parfois lourds à mettre en place. Il est possible alors de passer à
de la programmation permettant une meilleure interaction avec la page HTML.

Principe
Quand le visiteur demande une simple page HTML (avec ou sans objets) en tapant une adresse ou
URL), le serveur web lui renvoie simplement le contenu de la page demandée, c'est le navigateur
web qui interprète le contenu HTML et les plug-ins qui interprètent les objets, en demandant à
leur tour le contenu des objets au serveur web.
Si du code, côté client, est inséré dans la page, le serveur web renverra également la page
au client, y compris le code. C'est donc à nouveau le navigateur web qui doit interprèter le
code et faire ce que le code demande.

Utilisation
La programmation côté client sera utilisée essentiellement dans le cas de validation de
formulaires (champs obligatoires, petits calculs,...) et dans la création de petites animations
(menus déroulants,...).
La programmation côté client utilise des langages de scripts. À la différence d'autres
langages de programmation, ces langages ne sont pas compilés. Ils sont interprètés par le
navigateur web du visiteur, et leur syntaxe est moins stricte que celle des langages de
développeurs (variables non-typées a priori, le point-virgule à la fin des instructions est
optionnel,...).
- JavaScript est le plus utilisé des langages de programmation web côté client. Il est
reconnu par tous les navigateurs (dans les versions actuelles). Il se base sur le langage
normalisé ECMAScript et possède une syntaxe issue du langage Java.
- JScript, fort proche du JavaScript est simplement une adaptation de celui-ci par
Microsoft.
- VBScript est le langage de script développé par Microsoft sur base du
Visual Basic. Ce langage n'est interprété que par les navigateurs basés sur ceux développés par
Microsoft (soit Internet Explorer et Maxthon). Il est donc peu utilisé sur l'Internet (mais
utilisé parfois sur des intranets).
- DHTML n'est PAS un langage de script mais simplement la combinaison, dans une page
web, de JavaScript, de HTML 4 ou de XHTML et de CSS.

Avantages et inconvénients
La programmation côté client est légère et relativement simple à implémenter (syntaxe pas
trop complexe).
Le code est envoyé tel quel au client, et donc visible par celui-ci (s'il regarde les sources
de sa page) et donc peu sécurisé. Le bon déroulement du programme dépend entièrement du
navigateur du client, de sa configuration et de son niveau de sécurité.
Il n'est donc pas question ici de lier le site web à une base de données.

La programmation web côté serveur
Lors de l'insertion de programmation côté serveur dans une page, lorsque le visiteur demande
la page, le serveur va d'abord lire celle-ci, il va interpréter le code serveur et encapsuler le
résultat dans la page HTML. Cette dernière sera expédiée au visiteur sans plus aucune trace du
code serveur. Le visiteur reçoit donc une pure page html (avec éventuellement encore du code
client).
De ce processus, on gagne énormément en sécurisation du code. On a aussi un grand nombre de
possibilités d'interactions avec d'autres systèmes ou applications comme les bases de données.
Les fichiers des pages "côté serveur" ont généralement une extension autre que .htm ou .html.
L'extension dépendra de la technologie utilisée.

Les différentes technologies
- ASP (Active Server Pages): technologie
développée par Microsoft à partir de 1996 dans le but de créer des pages dynamiques. ASP permet
d'ajouter du code dans la page HTML qui sera interprété par le serveur. La partie ADO
(ActiveX Data Object) de ASP permet de se connecter à une base de données.
- Langages utilisés : VBScript (langage par défaut) ou JScript.
- Portabilité : la technologie est implémentée sur les serveurs web de Microsoft (IIS et PWS).
- Mise en place : utilisation de langage de Script donc d'accès relativement aisé (mais
se complexifie vite).
- Performance : bonne performance surtout si l'on utilise du code compilé (dll).
- Utilisation : tout site web dynamique peut être créé en ASP.
- ASP.Net: technologie développée par Microsoft
sur base du Framework.Net. L'évolution est importante par rapport à ASP et les possibilités
deviennent quasi infinies. ASP.Net a le gros avantage, par rapport à d'autres technologies, de
bien séparer le contenu de la page web, sa mise en forme et la programmation des aspects
dynamiques (travail en Code Behind).
- Langages utilisés : C#, VB.Net, JavaScript.Net... et de nombreux autres langages
partageant le Common Runtime Language du Framework.Net.
- Portabilité : la technologie est implémentée sur les serveurs web de Microsoft (IIS
2003).
- Mise en place : utilisation de langage de programmation et nécessite donc de bonnes
bases en programmation mais le langage importe peu (plusieurs langages possibles). Avec la
version 2 (ASP.Net 2.0) et un outil de développement comme Visual Studio, le développement
d'applications peut déjà aller très loin sans programmation : beaucoup de contrôles sont gérés
par leurs propriétés.
- Performance : excellentes performances car tout le code est compilé (soit pré-compilé,
soit compilé à la volée).
- Utilisation : tout type d'application web peut être créé avec ASP.Net.
- PHP est un langage de Script interprété côté serveur.
Le code PHP est inscrit directement dans la page HTML et sera lu par le serveur, "processé" et
le résultat sera encapsulé dans la page HTML. Ce langage a été créé dans le cadre des logiciels
Open Source (libre de droit quant à leurs sources et
leur documentation).
- Portabilité : les modules serveurs de PHP sont implémentés sur les serveurs Apache et
Unix mais PHP peut être implémenté sur d'autres plateformes via des CGI. PHP travaille
généralement avec une base de données MySQL.
- Mise en place : PHP est un langage de script, donc relativement facile à apprendre.
La syntaxe est simplifiée, mais part d'une base de C. De nombreux développeurs ont profité de
l'Open Source pour développer de nombreux modules prêts à l'usage et paramétrables à volonté.
- Performance : très bonnes performances. La seule limite serait l'évolution rapide des
modules et donc parfois le besoin de "rafraîchir" la programmation.
- Utilisation : tout type d'application web peut être créé avec PHP.
- JSP (Java Server Pages): technologie
développée par Sun Microsystems dans le but de créer des pages dynamiques avec le langage Java.
Les JSP permettent d'ajouter du code Java dans la page HTML qui sera interprété par le serveur.
On peut distinguer trois ensembles d'instructions JSP :
- Les instructions de programmation permettent d'insérer des bouts de code Java directement
dans la page Web, et donne accès à une grande partie de la librairie de programmation de la
version standard de Java (composants JavaBeans, accès aux bases de données via JBDC etc.)
- Les directives qui permettent de spécifier certaines propriétés de la page, l'inclusion du
contenu d'autres fichiers et l'utilisation d'autres classes et librairies de balises
personnalisées.
- Les actions permettent essentiellement d'utiliser des composants JavaBeans existants.
- Portabilité : Très grande portabilité grâce à Java : serveurs Apache mais aussi IIS, etc.
- Mise en place : Utilisation de Java comme langage de programmation.
- Performance : Très variable en fonction de l'implémentation utilisée.
- Utilisation : Tout type de fonctionnalités.
- Servlets: le nom vient d'une analogie possible à faire avec les applets. Il s'agit
donc de programmes créés en Java et tournant sur le serveur web. L'exécution du programme génère
les pages web renvoyées au client.
- Langages utilisés : Java.
- Portabilité : Très grande portabilité grâce à Java : serveurs Apache mais aussi IIS, etc.
- Mise en place : Utilisation de Java comme langage de programmation.
- Performance : Très variable en fonction de l'implémentation utilisée.
- Utilisation : Tout type de fonctionnalités.
- ColdFusion: ColdFusion est une technologie de création de pages dynamiques développée
par Macromedia. Les pages d'application sont des pages Web contenant des instructions de
programmation écrite à l'aide d'un langage propriétaire, le CFML (ColdFusion Markup Language).
Le CFML est un langage simple basé sur des balises dont la syntaxe est similaire à celles du
langage HTML mais interprétées par le serveur.
- Ajax: Ajax est une technologie qui combine plusieurs éléments :
- du XHTML pour la structure de la page,
- les CSS pour la mise en forme de la page,
- du JavaScript et le DOM pour la partie dynamique,
- XML, XSLT et XMLHttpRequest pour la manipulation des
données (ou d'autres formats de fichiers de données).
À la base, cette technologie permet d'effectuer une requête HTTP asynchrone (en parallèle) au
serveur Web (effectuer une action, mettre à jour une information, ...). Le serveur renvoie la
ressource demandée, celle-ci pouvant contenir des informations ou du code pour mettre à jour la
page HTML.
© Copyright Auteurs Wikipedia - Source : Wikipedia - Cet article est sous licence GFDL

Vous recherchez un prestataire pour :