Aller au contenu

Numérique et sciences informatiques (spécialité) · Première

Diversité des langages de programmation : cours de NSI Première

Publié le 6 novembre 2026 · Mis à jour le 6 novembre 2026 · Signaler une erreur

L'essentiel

  • Il n'existe pas de langage meilleur que les autres : chaque langage est pensé pour des usages précis, par exemple R pour les statistiques et la science des données.2
  • Les langages ont une filiation : R est une implémentation de S, avec en plus une portée lexicale et un ramasse-miettes.2
  • Pour comparer deux langages, on regarde leur usage, leur filiation, la visibilité des variables, la gestion de la mémoire, les bibliothèques et la communauté.
  • Un langage vit par sa communauté et ses bibliothèques : R compte plus de 200 bibliothèques dès 2003.2
  • En NSI, le langage de référence est Python ; comprendre la diversité permet de transposer ses compétences d'un langage à l'autre.1

Pourquoi y a-t-il plusieurs langages ?

Quand tu apprends à programmer en NSI, tu travailles surtout avec Python. Les sujets de l'épreuve de spécialité comportent d'ailleurs un exercice de programmation orientée objet en Python et d'algorithmique.1 On pourrait croire qu'un seul langage suffirait pour tout faire. Pourtant, il en existe un très grand nombre, et de nouveaux apparaissent régulièrement.

Ce cours répond à une question simple : pourquoi cette diversité, et comment s'y repérer ? Tu vas voir qu'un langage n'est pas un simple décor. C'est un outil, imaginé par des personnes précises, pour des besoins précis, à un moment donné de l'histoire de l'informatique.

Pour rester concret, nous nous appuierons sur un exemple détaillé : le langage R. Tu ne le rencontreras sans doute pas en cours, mais il illustre très bien ce qui différencie deux langages : son usage, son histoire, ses mécanismes internes et la communauté qui l'entoure.

Tu as déjà vu en classe les constructions élémentaires (variables, tests, boucles, fonctions) et la façon de spécifier et de tester un programme. Ici, on prend du recul : on regarde ces idées depuis l'extérieur, comme quelqu'un qui compare plusieurs outils d'un même atelier.

Un langage pensé pour un usage : l'exemple de R

R est à la fois un langage de programmation et un logiciel libre. Son terrain, ce sont les statistiques et la science des données.2 Les statisticiens, les data miners et les data scientists s'en servent beaucoup pour construire des outils de calcul statistique et pour étudier des jeux de données.2

Cela signifie que les personnes qui l'ont fait évoluer ont fait des choix pour faciliter ce travail précis. Quand tu veux calculer une moyenne ou représenter une série de valeurs, le langage et ses bibliothèques mettent à ta disposition des outils déjà prêts, au lieu de te laisser tout écrire à la main.

On voit ici un principe général : plus un langage est spécialisé, plus il est confortable dans son domaine, et moins il est naturel en dehors. Un langage généraliste, au contraire, sait faire un peu de tout sans être taillé pour une tâche en particulier.

Les langages ont une histoire et une filiation

Un langage ne naît presque jamais de rien. Il reprend des idées d'autres langages, les modifie, les combine. R est une implémentation du langage S, à laquelle s'ajoutent deux éléments : une portée lexicale, inspirée du langage Scheme, et un ramasse-miettes.2 Quant à S, il a été conçu aux laboratoires Bell par John Chambers, avec l'aide de ses collègues.2

La toute première version officielle de R, numérotée 1.0.0, date du 29 février 2000.2 Trois ans plus tard, en 2003, l'équipe qui fait vivre le projet met en place la R Foundation for Statistical Computing, pour soutenir R et servir de point de contact à la communauté.2

Retiens la logique : S existait avant R, R l'a repris et enrichi. On dit que R descend de S. Cette filiation explique pourquoi deux langages peuvent se ressembler beaucoup tout en étant distincts.

Les critères pour comparer deux langages

Pour ne pas se perdre dans la diversité, on compare les langages selon quelques critères stables. Aucun critère n'est « bon » ou « mauvais » en soi : tout dépend du besoin. Cette grille te servira dans tous les cas où tu devras justifier un choix technique, à l'écrit comme à l'oral.

Choisir un langageÉtapes pour choisir un langage : définir le besoin, repérer l'écosystème, tester un petit programme, décider.1Définir le besoinQuel problème veux-tu résoudre ?2Repérer l'écosystèmeBibliothèques, documentation, aide.3TesterÉcris un petit programme au résultat connu.4DéciderRetiens le langage le plus adapté.
  1. Définir le besoinQuel problème veux-tu résoudre ?
  2. Repérer l'écosystèmeBibliothèques, documentation, aide.
  3. TesterÉcris un petit programme au résultat connu.
  4. DéciderRetiens le langage le plus adapté.
Choisir un langage · Démarche simple pour choisir un langage selon un besoin.

Écosystème, communauté et popularité

Un langage ne vit pas seul. Ce qui le rend utile, ce sont aussi les bibliothèques écrites par d'autres et la communauté qui l'entretient. En 2003, le langage R comptait déjà plus de 200 bibliothèques développées par la communauté scientifique qui l'utilisait.2 Des rencontres entre utilisateurs sont organisées régulièrement, notamment au sein de groupes comme R-Ladies, qui défendent la diversité des genres chez les utilisateurs du langage.2

La popularité d'un langage se mesure avec des indices comme l'index TIOBE. R y est classé 13e en octobre 2025, puis 9e en septembre 2026.2 Cela montre qu'un langage évolue dans le temps : un rang n'est jamais définitif.

Et en NSI ? Python et la transposition

Au lycée, tu apprends les mêmes idées fondamentales (variables, boucles, fonctions, tests) dans un seul langage, Python. Les exercices de programmation de l'épreuve de spécialité s'appuient d'ailleurs sur lui, avec de la programmation orientée objet et de l'algorithmique.1

La diversité des langages ne remet pas cela en cause : elle te rappelle que ces idées se transposent. Une boucle for en Python a un équivalent dans la plupart des langages, avec une écriture différente.

Erreurs fréquentes et regard critique

Exercices corrigés

Exercice 1 Lire la chronologie de R

★☆☆Environ 5 min

La première version officielle de R est publiée en 2000 et la R Foundation for Statistical Computing est créée en 2003. Combien d'années séparent ces deux événements ?

Indice 1

Fais une soustraction entre les deux années.

Voir la correction pas à pas
  1. Repère l'année de la première version officielle : 2000.

  2. Repère l'année de création de la fondation : 2003.

  3. Calcule la différence : 2003−2000=32003-2000=3.

Il s'écoule 3 ans entre la première version officielle et la création de la fondation.

Exercice 2 Suivre un programme à portée lexicale

★★☆Environ 10 min

On considère le programme Python suivant :

n = 5

def somme_carres():
    s = 0
    for i in range(1, n + 1):
        s = s + i * i
    return s

def test():
    n = 2
    return somme_carres()

print(test())

Quelle valeur est affichée ?

Indice 1

Quel n la fonction somme_carres utilise-t-elle : celui où elle est écrite ou celui de test ?

Indice 2

Calcule ensuite 12+22+⋯+n21^2+2^2+\dots+n^2.

Voir la correction pas à pas
  1. somme_carres utilise le n défini là où elle est écrite, c'est-à-dire le n global qui vaut 5.

  2. Le n = 2 de test est une variable locale à test, invisible pour somme_carres.

  3. La boucle parcourt ii de 1 à 5.

  4. Calcule 1+4+9+16+25=551+4+9+16+25=55.

Le programme affiche 55. Retenir : avec une portée lexicale, on lit le texte du programme pour savoir quelle variable est utilisée.

Exercice 3 Comparer des rangs de popularité

★☆☆Environ 5 min

R est classé 13e à l'index TIOBE en octobre 2025, puis 9e en septembre 2026. De combien de places a-t-il progressé ?

Indice 1

Un rang plus petit signifie un meilleur classement.

Voir la correction pas à pas
  1. Rang de départ : 13.

  2. Rang d'arrivée : 9.

  3. Nombre de places gagnées : 13−9=413-9=4.

R a progressé de 4 places.

Quiz

7 questions · correction immédiate · ton score reste sur ton appareil.

  1. Pour quel usage principal le langage R a-t-il été conçu ?

  2. De quel langage R est-il une implémentation ?

  3. Quels éléments R ajoute-t-il à S ? (plusieurs réponses)

    Plusieurs réponses possibles.

  4. Dans un programme, la fonction f utilise le x global qui vaut 10, même si la fonction g qui l'appelle définit un x local. Cette lecture illustre :

  5. La première version officielle de R (1.0.0) a été publiée en 2000.

  6. Un meilleur classement à l'index TIOBE correspond à un rang numériquement plus grand.

  7. Combien de places R a-t-il gagnées en passant du 13e rang au 9e rang ?

Les questions qu'on se pose

Pourquoi apprendre qu'il existe plusieurs langages si on code en Python ?

Parce que les idées de base (variables, boucles, fonctions) se retrouvent partout. Savoir qu'un langage est choisi selon un usage, comme R pour les statistiques,2 t'aide à comprendre pourquoi tu en rencontreras d'autres plus tard.

Quel est le meilleur langage de programmation ?

Il n'y en a pas un seul. On choisit selon l'usage, l'écosystème et la communauté. Un langage très présent dans un domaine, comme R en statistiques,2 peut être peu utilisé ailleurs.

À quoi sert de connaître la filiation d'un langage ?

Elle explique ses choix. Savoir que R descend de S et ajoute une portée lexicale et un ramasse-miettes2 permet de comprendre à la fois ses points communs et ses différences avec d'autres langages.

Est-ce que cette notion tombe à l'épreuve de NSI ?

Les sujets de l'épreuve portent sur des thèmes précis comme les bases de données, les réseaux, la programmation orientée objet en Python et l'algorithmique.1 Cette notion sert surtout à te donner du recul et un vocabulaire pour comparer des outils.

Sources

  1. Spécialité NSI - Numérique et Sciences Informatiques (formations, ressources, textes de référence), Éduscol STI. Consulté le 6 novembre 2026.
  2. R (langage), Wikipédia. Consulté le 6 novembre 2026.
  3. Origine du langage, Wikipédia. Consulté le 6 novembre 2026.

Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.

Signaler une erreur sur cette page

Je suis en…

Primaire

  • CP Bientôt
  • CE1 Bientôt
  • CE2 Bientôt
  • CM1 Bientôt
  • CM2 Bientôt

Collège

Lycée

Supérieur

  • BTS Bientôt
  • BUT Bientôt
  • Licence Bientôt
  • Prépas Bientôt

Sur cette page