Aller au contenu principal

Introduction à l'informatique · L1 · Section 4/7

Histoire brève

Progression

Points d’expérience : XPSérie de jours consécutifs : · —Progression du module : — / —compris

#Brève histoire de l'informatique

#Prérequis

Aucun. Ce chapitre sert de carte ; les notions croisées (compilateur, système d'exploitation, réseau) sont détaillées dans matériel et logiciel.

#Objectifs d'apprentissage

  • Ordonner les grandes vagues techniques, de 1800 à aujourd'hui.
  • Associer à chaque vague l'abstraction nouvelle qu'elle apporte.
  • Situer un outil actuel (conteneur, navigateur, framework) dans cette lignée.

#Jalons structurants

#Machines programmables (1800-1930)

Du métier à tisser de Jacquard aux machines analytiques de Babbage et aux notes d'Ada Lovelace, une idée émerge : un programme peut décrire une suite d'actions séparée de la machine. Les cartes perforées prouvent qu'on peut stocker des instructions et les remplacer sans toucher au matériel.

#Fondements théoriques (1930-1950)

Alan Turing et Alonzo Church formalisent ce qui est calculable. Les premiers ordinateurs électroniques (Colossus, ENIAC) automatisent des calculs réels, mais la programmation reste câblée : changer de programme demande de rebrancher la machine.

#Langages et systèmes (1950-1970)

Le compilateur (Fortran en 1957, COBOL en 1959) permet d'écrire des programmes proches du problème plutôt que du matériel. Les systèmes d'exploitation multi-tâches partagent la machine entre plusieurs utilisateurs et introduisent fichiers, processus et gestion de la mémoire.

#Standardisation et réseaux (1970-1990)

UNIX popularise la philosophie « tout est fichier » et des outils composables, écrits en C. Le micro-ordinateur rend l'informatique personnelle et abordable. ARPANET puis Internet démocratisent la communication entre machines.

#Web, mobile, cloud (1990-2010)

Le web déploie le modèle client-serveur à grande échelle sur des standards ouverts : HTTP, HTML, CSS, puis JavaScript. Smartphones et tablettes imposent l'interface tactile et une forte contrainte énergétique. Le cloud rend l'infrastructure élastique : on loue de la capacité à la demande.

#Données et IA à grande échelle (2010 à aujourd'hui)

Les architectures distribuées, les GPU et l'apprentissage profond transforment la vision, le langage et la recommandation. Gouvernance, éthique et consommation énergétique deviennent des sujets de conception, pas des annexes : voir informatique et société.

#Le fil directeur : chaque vague ajoute une abstraction

VagueAbstraction gagnéeCe que vous cessez de gérer
Compilateursécrire a + b au lieu d'assembleurles registres et les instructions machine
Systèmes d'exploitationfichiers, processus, socketsles disques, la mémoire physique, les cartes
Réseaux et webHTTP, URL, navigateurles paquets, la retransmission, le routage
Cloud et conteneurscapacité à la demandeles serveurs physiques et leur dimensionnement
IA de serviceAPI de langage et de visionl'entraînement et l'hébergement des modèles

Chaque palier simplifie le précédent, jamais gratuitement : il ajoute des couches à comprendre quand quelque chose se casse.

#Exercice

Associez chaque usage à l'abstraction qui le rend possible, parmi : compilateur, système d'exploitation, pile web, cloud.

  1. Écrire x = y + 1 sans connaître le fonctionnement du CPU.
  2. Ouvrir un fichier sans connaître le modèle du SSD.
  3. Charger une page web sans gérer les retransmissions perdues.
  4. Absorber un pic de trafic avec 100 serveurs supplémentaires, sans acheter un seul rack.

#Éléments de correction

  1. Le compilateur (avec l'abstraction du langage de haut niveau) traduit vers le code machine.
  2. Le système d'exploitation et son système de fichiers exposent open et read.
  3. La pile web : TCP fiabilise le transport, HTTP structure l'échange, le navigateur orchestre le rendu.
  4. Le cloud : virtualisation et orchestration transforment le matériel en capacité facturable à la demande.

#À retenir

Chaque vague introduit une abstraction qui cache la précédente : le compilateur cache l'assembleur, l'OS masque le matériel, le web masque les protocoles bas niveau. Situer un outil dans cette pile aide à lire sa documentation, à anticiper ses limites et à expliquer vos décisions d'architecture.