Langages de programmation orientés Web

Introduction

2025 - 2026

Nos objectifs

  • Comprendre comment fonctionne le web
  • Découvrir les différentes technologies
  • Prendre en main les outils disponibles
  • Mettre en pratique les notions vues aux cours pour construire un site web

Contexte

Le modèle client-server

  • Client: l'utilisateur qui fait une requête depuis un navigateur pour atteindre une ressource.
  • Réseau: fait la jonction entre le client et le serveur.
  • Serveur: l'endroit où se trouve les ressources (les données).

Schéma d'une requête

Une requête peut se résumer à un client/navigateur qui souhaite atteindre une URL, laquelle est traduite en adresse IP par un serveur DNS afin de localiser le serveur où se trouvent les données.

Schéma d'une réponse

Si la requête aboutit, les données correspondantes sont renvoyées par le serveur vers le navigateur côté client, qui les interprète.

Navigateurs

ou client

La requête doit partir d'un client, qui prend la forme d'un navigateur. Ce dernier interprète les données renvoyées par le serveur comme de l'HTML, du CSS et du Javascript via un moteur de rendu. Voici les plus connus/pertinents:

URL

pour Uniform Resource Locator

Une adresse qui permet de localiser une ressource sur le web, comme une page HTML, une image, un fichier, etc.

Il est composé de différentes parties.

Ex: https://www.rtbf.be/recherche/article?q=culture

Protocole

https://www.rtbf.be/recherche/article?q=culture

Le protocole de communication est une spécification de plusieurs règles pour un type de communication particulier. Voici les plus communs:

  • HTTP: HyperText Transfer Protocol
  • HTTPS: HyperText Transfer Protocol Secure
  • FTP: File Transfer Protocol
  • SMTP: Simple Mail Transfer Protocol
  • TCP/IP: Transfer Control Protocol / Internet Protocol

Nom de domaine

https://www.rtbf.be/recherche/article?q=culture

La combinaison entre au moins un mot et une extension(ex: .com, .be, .org, etc.) qui défini une adresse unique. Cela fonctionne comme une adresse composée du nom de la rue, d'un numéro et d'un code postal pour le web.

Sous-domaine

https://www.rtbf.be/recherche/article?q=culture

Un répertoire à l'intérieur de votre domaine principal. Cela permet d'organiser différentes sections d'un site web.

Le plus connu est www, souvent créé et utilisé à l'achat d'un nom de domaine.

Dossier &
sous-dossier

https://www.rtbf.be/recherche/article?q=culture

Un dossier contient des pages secondaires, qui peut lui même contenir des sous-dossiers avec des pages ternaires.

Ceci peut être la réprésentation de l'architecture de vos fichiers, ou d'une schéma défini (routing).

Page

https://www.rtbf.be/recherche/article?q=culture

La page est l'endroit actuel où se trouve l'utilisateur. La syntaxe peut varier selon les paramètres du serveur ou du fichier pointé (.html, .php, .jpg, .pdf, .css, etc.).

Paramètre(s) &
fragment

https://www.rtbf.be/recherche/article?q=culture

On peut retrouver des paramètres qui commence avec le symbole ? pour passer des données via l'url, et/ou un fragmant via le symbole # qui représente une portion particulière de la page courante.

Adresse IP

Un numéro d'identification unique attribué de façon permanente ou provisoire à chaque périphérique faisant partie d'un même réseau informatique utilisant l'Internet Protocol. Retenons 2 formats:

  • IPV4:
    172.016.254.001 (4 milliards de combinaisons)
  • IPV6:
    2001 : 0DB8 : AC10 : FE01 : 0000 : 0000 : 0000 : 0000 (340 sextillion de combinaisons)

Normes de communication

Ces modèles décrivent des couches fonctionnelles nécessaires pour organiser et standardiser la communication entre systèmes informatiques. Retenons 2 modèles:

Technologies & techniques

HTML

HyperText Markup Language permet de mettre en place le contenu d'un site web à travers le DOM avec des balises. Ceci est interprété par le client.

Ceci est balise titre de premier niveau

Représente un paragraphe

Une règle essentielle est d'utiliser la bonne balise pour le bon contenu: la sémantique.

CSS

Cascading Style Sheets est un langage permettant de modifiant les styles de notre DOM. On peut définir différentes propriétés pour modifier les styles comment l'apparance, la mise en page, la gestion typographique, etc.

Ceci est balise titre de premier niveau

Représente un paragraphe

h1{
  // Change la couleur du texte
  // des balises 

color: crimson; }

JavaScript

Ce langage permet de créer des intéractions avec l'HTML et dynamiser l'expérience web, comme définir une action à réaliser au clique d'un élément. À la base c'est un langage côté client, mais qui prend de plus en plus de place côté serveur avec l'environnement node.js.

⚠️ Évitez de raccourcir JavaScript par Java, ce sont 2 langages différents.

Ceci est balise titre de premier niveau

Représente un paragraphe

h1{
  // Change la couleur du texte
  // des balises 

color: crimson; }

// Récupère l'élément 

et l'enregistre // pour réaliser des actions par la suite. const title = document.querySelector('h1'); // Change le contenu texte de notre titre title.textContent = 'Ce titre a un contenu dynamique'

Requête asynchrone

Cette technique permet de faire des requêtes en tâche de fond, ceci permet de charger du contenu de manière transparente et efficace. Il existe 2 techniques:

  • AJAX: une version plus ancienne
  • Fetch API: une version moderne

PHP

PHP: Hypertext Preprocessor est un langage côté serveur utilisé pour créer des sites web dynamiques et interagir avec des bases de données.

Nos outils

  • Un navigateur
  • Un éditeur de texte ou IDE (VS code)
  • un serveur (local ou distant)
  • un hébergement
  • un FTP (Filezilla)

Liens utiles

Tutoriels

Hello World

Créons notre premier fichier index.html

Bye

1/8

1/1