C++
Introduction
Historique

L'histoire du C++, comme la plupart l'ont déjà remarqué, est très liée à l'histoire du C. C lui-même est historiquement lié au système UNIX, un nom familier mais encore très exotique. En 1969, la première version du système UNIX voit le jour dans les laboratoires Bell, dans le New Jersey, pour une machine appelée coquettement DEC PDP-7. Mais le langage utilisé pour écrire ce système était l'assembleur. Or l'assembleur est un langage qui permet peu de suivi et d'évolution des logiciels.

Peu après l'apparition d'UNIX, Ken Thompson créa un nouveau langage de programmation, nommé B, lui-même inspiré du langage BCPL (Basic Combined Programming Language, développé par Martin Richards). Le but de B était de créer un langage plus simple que le BCPL, lui-même plus simple déjà que le langage CPL. Mais ce but ne fut que trop bien atteint, et le B s'avéra être un peu trop simple et trop dépendant de l'architecture.Peu après l'apparition du B, une nouvelle machine fut introduite : le PDP-11. UNIX et B ont tout de suite étés transférés vers cette nouvelle architecture, plus rapide que le PDP-7. Mais réécrire UNIX en assembleur (car les assembleurs ne sont pas les mêmes de machine à machine) était une tâche trop ardue, et on considéra de le réécrire en B. Le problème était alors que le B était relativement lent, du au fait qu'il s'agissait d'un langage interprété (comme le Basic et le Java aujourd'hui).C'est pour cela qu'en 1971, on commença a travailler sur le successeur de B, nommé dans l'odre des choses C.

On s'accorde pour dire que Dennis Ritchie est le véritable créateur du C. La puissance du C était véritable : ce langage n'avait pas été fait spécifiquement pour une sorte de machine, ou pour une sorte de système. C'est donc un langage hautement portable. De plus, son rayon d'action s'étend du bas niveau de la machine (le C peut générer du code aussi rapide que du code assembleur), au haut niveau des langages orientés problèmes. Virtuellement, on peut donc tout faire avec du C : du pilote de matériel jusqu'au logiciel de gestion, en passant par les jeux. Le C devint vite tellement populaire que tout le monde voulait en faire sa version. Si bien que les différents compilateurs devinrent incompatible les uns avec les autres, et on avait perdu une grande part de la portabilité du C. L'idée vint alors qu'il fallait un standard pour le langage C. C'est un comité de l'ANSI (American National Standards Institute) qui mit au point ce standard en 1983, et depuis, la plupart des compilateurs (Borland, Microsoft, GNU CC...) se sont pliés à ce standard, si bien qu'un programme écrit en ANSI C est compilable presque partout.

Le C avait donc de nombreux avantages. Mais il lui manquait ce qui caractérise la plupart des compilateurs modernes : la programmation orientée objet.Le Dr. Bjarne Stroustrup de Bell Laboratories (encore une fois) est le créateur du C++, dont le développement date du début des années 1980. Le but était de créer un langage permettant la programmation orientée objet tout en restant hautement performant. Il fallait aussi toucher un large public. Or les deux dernières caractéristiques désignaient directement le C, déjà utilisé pour écrire des milliards de lignes de code dans tous les domaines. Il créa alors le C++ sur la base du C, en prenant soin de préserver la compatibilité : tout programme C peut être compilé en C++. La plupart des ajouts sont inspirés des langages Simula67 et Algol68. La liste des améliorations du C au C++ est trop longue pour être écrite ici.Il n'y a pas a l'heure actuelle de standard ANSI C++ en tant que tel, mais on a ajouté a l'ANSI C des spécifications concernant le C++. Aujourd'hui, les langages C et C++ sont deux des langages les plus utilisés de la planète, et tirent leur force de leur flexibilité, leur performance et surtout, de leur immense popularité.

Environnement :
IDE :
  • Eclipse
  • CDT Eclipse.
Compilateur :
  • MinGW : http://sourceforge.net/projects/mingw/files/
  • Bordland C++ compileur : http://www.codegear.com/downloads/free/cppbuilder
  • Digital Mars : http://www.digitalmars.com/
  • Cygwin : http://sources.redhat.com/cygwin/
Documentation de référence :
  • C++ : http://www.cplusplus.com/reference/
Imprimer
Notez cette page

S'il vous plait, prenez un moment pour remplir ce formulaire pour nous aider à mieux vous servir.

12345

    :: Ajouter aux favoris :: Contact