Créer son site Web / Partie 2 - Les langages Web

2. Langages de sites

Trop de gens veulent tout, tout de suite. Ils veulent un site hyper dynamique en un clin d'oeil et finissent par ne plus savoir où donner de la tête. Evidemment, le monde de ces langages (au sens global du terme) est assez vaste, et je vais expliciter les principaux afin d'aider les utilisateurs dans leur choix.
Je vais commettre un ou plusieurs abus de langage, volontairement, mais je prends le sens global du mot.

2.1. Langages s'exécutant chez le visiteur : langages "client"

HTML (HyperText Markup Language)

Langage statique, sert à baliser le texte. (Ce morceau là sera un paragraphe, celui là une liste d'éléments ... celui là en gros titre, etc ...). L'HTML est un langage formé de balises écrites sous la forme <balise>texte balisé</balise> (pour celles qui ont une fermeture) - il s'écrit selon plusieurs définitions, appelées "Doctype" (ou DTD), qui régissent des normes et conventions d'écriture. Il y a 2 doctypes actuellement (HTML, xHTML - x pour eXtensible), qui se déclinent en plusieurs versions chacun ainsi qu'en 3 modes (frameset, transitionnal, strict). Pour plus d'information, consultez l'article sur les Doctypes -

Liens : https://openweb.eu.org/xhtml - http://www.w3schools.com

CSS (Cascading Style Sheet)

Ce n'est pas à proprement parler un "langage" mais plutôt une suite de définitions de classes avec des attributs, remplis de valeurs. Les styles CSS permettent de définir l'aspect selon le media de chaque balise. Typiquement, pour un media d'affichage graphique, les styles CSS permettent de définir l'apparence ("visuelle") des balises HTML de la page à laquelle ils sont rattachés.

Liens : http://css.alsacreations.com - http://www.w3schools.com

Javascript

C'est un langage dynamique qui va permettre de programmer certains comportements sur le navigateur du client. Ce n'est pas un moyen sécurisé de vérifier des données, car le client peut à tout moment désactiver le javascript. En outre, il présente des problèmes d'accessibilité que nous verrons plus loin, mais il permet par exemple de faire des petits effets sympas comme du masquage de texte, ou de la vérification simple de formulaire... ou plus complexe : couplé à de l'XML, il peut interroger via PHP une base de données ou exécuter un script, cela se nomme l'AJAX (Asynchronous Javascript And Xml)

2.2. Langages s'exécutant sur le serveur : langages "serveur"

Ces langages ne seront PAS vus par le client, ils seront interprétés par le serveur qui, au final, enverra un document au client en langage client. (souvent en html simple, mais on peut générer du javascript, ou du flash ...)

ASP - PHP (Active Server Pages - PHP Hypertext Preprocessor)

Ces langages assurent le même rôle, à savoir la possibilité de programmer des pages dont le contenu est dynamique, une interconnexion avec un moteur de base de données ... Seulement ASP est un langage Microsoft ressemblant au visual basic, et fonctionne sur un serveur IIS alors que PHP, fonctionnant sur un serveur Apache, ressemble plus au langage C et est issu du "Libre".

JSP (Java Server Pages)

L'équivalent du PHP/ASP, mais en Java. (Java n'a rien de commun avec le Javascript)

SQL (Structured Query Language)

Langage d'interrogation d'une base de données. Il permet d'effectuer des travaux sur une base de données, que ce soit pour extraire des données, en ajouter, en supprimer, en éditer.

2.3. Quel langage faut-il pour mon site ?

Pour que le client puisse voir le site, il faut un langage que l'ordinateur client puisse comprendre... Il faut donc un langage "client", comme l'HTML, le CSS, le Javascript...

On peut très bien ne faire que de l'HTML, le CSS n'est *pas* obligatoire... Mais pour donner un aspect à couleur et une présentation plus jolie à un texte, il est bien mieux de séparer le contenant (HTML) de la mise en forme (CSS)...

La raison est très simple, en cas d'évolution du site (aujourd'hui, je le veux rouge, demain je le voudrai vert) il n'y aura qu'une CSS à refaire, et non 500 pages à rééditer sur le site...
Il existe en outre bien d'autres considérations qui rendent les CSS très utiles, notamment leur media : on peut faire une feuille CSS pour l'affichage, et une feuille différente pour l'impression. (Faites un aperçu de l'impression de cette page de site et comparez avec ce que le site montre, vous verrez la différence ...). Enfin, il y a des raisons sémantiques expliquées dans l'article Sémantique HTML.

En conclusion, pour commencer à faire un site, le mieux est d'apprendre l'HTML ...
Ainsi qu'aux CSS pour mettre en page ses données