• 20 hours
  • Medium

Free online content available in this course.

course.header.alt.is_video

course.header.alt.is_certifying

Got it!

Last updated on 2/1/19

Retracez les origines de la POO

Log in or subscribe for free to enjoy all this course has to offer!

La programmation orientée objet est une technique de programmation incontournable aujourd'hui comme nous l'avons vu dans le chapitre précédent. Pour bien comprendre ce qu'elle est et ce qui a fait son succès, il me semble pertinent de savoir d'où elle vient !

Embarquez pour un voyage dans l'histoire de la POO !
Embarquez pour un voyage dans l'histoire de la POO !

Les débuts

Tout commence un matin de 1960. Ce jour-là, Ivan Sutherland, un étudiant en thèse au MIT à Boston, se réveille avec une grande idée. Il souhaite créer un logiciel qui permet de dessiner sur un ordinateur. Pour rappeler un peu le contexte, on est à une époque où la souris n'existe pas et les interfaces graphiques des ordinateurs non plus. Tout ou presque est clavier et texte en informatique.

Sutherland va créer, pendant sa thèse, le logiciel SketchPad. Ce logiciel permet à l'aide d'un stylet de lumière de dessiner avec l'ordinateur des formes simples comme des triangles, carrés, cercles, etc. Ce projet a posé les bases de la création assistée par ordinateur (CAO).

SketchPad
SketchPad

Mais ce projet fait aussi partie des exemples fondateurs de la POO. Pourquoi ? Et bien parce qu'en POO, on crée des objets qui contiennent des propriétés et une logique propre. Et souvent ces objets représentent des éléments concrets comme un utilisateur, un article ou un panier. Et dans le cas de SketchPad, Sutherland a créé des objets pour représenter un triangle, un carré, un rond, etc. Et c'est ce qui a permis à Sutherland de programmer SketchPad. Car dans son code au lieu de manipuler une variable hauteur et une autre variable largeur pour représenter un rectangle, il pouvait manipuler directement un objet rectangle dans son programme.

La formalisation

Son projet et quelques autres ont influencé le langage de programmation Simula qui en 1967 a connu une mise à jour majeure Simula 67 (oui, ils se sont creusé la tête sur le nom de la mise à jour :D). Cette mise à jour incluait le principe d'objet au coeur du programme.

Dans les années 70, l'entreprise Xerox, à qui on doit l'invention de la souris et de l'interface graphique, planche sur l'ordinateur personnel (ou personnal computer, votre bon vieux PC !) Ils veulent créer un ordinateur que tout le monde pourrait facilement utiliser grâce à une interface graphique, une souris, des fenêtres, etc. Et pour représenter tous ces éléments à l'écran et soutenir la logique de leur affichage, une équipe emmenée par Alan Kay a créé le langage SmallTalk qui s'inspire de Simula et qui pour beaucoup a posé les derniers jalons de de la POO telle qu'on l'utilise aujourd'hui !

Le Xerox Alto, l'un des tout premiers ordinateurs personnels
Le Xerox Alto, l'un des tout premiers ordinateurs personnels

La généralisation

Leurs travaux ont été publiés largement en 1981 et ils ont donné naissance à de grands langages orientés objet comme :

  • Objective-C : Oui le langage qui permet encore aujourd'hui de développer des applications iPhone est l'un des pionniers de l'orienté objet.

  • C++ : Le dérivé du C orienté objet

  • Eiffel : Cocorico ! Ce langage développé par le français Bertrand Meyer est du pur orienté objet.

Alors, alors...

À la lumière de cette brève histoire de la POO, on peut retenir 3 choses :

  1. La POO s'est installée au fur et à mesure, car elle a permis de simplifier la programmation. C'est ce que dit le langage Eiffel, mais bien avant lui, c'est la raison pour laquelle certains langages ont été développés comme le SmallTalk.

  2. L'origine de la POO est intimement liée à l'interface graphique comme le montrent l'exemple de SketchPad ou les prémices de l'ordinateur personnel. Car la POO permet non plus de manipuler des types standard comme des entiers ou des chaînes de caractères, mais des objets plus complexes comme des ronds, des fenêtres ou des utilisateurs. En POO, on crée donc des objets qui représentent des choses intelligibles. Et quoi de plus intelligible que ce que l'on peut voir !

  3. L'histoire de la POO a accompagné les grandes révolutions de l'informatique moderne comme les interfaces graphiques ou l'ordinateur personnel. Elle est sans doute ce qui a permis toutes ces révolutions et cela prouve qu'elle est absolument incontournable.

On continue notre découverte de la POO dans le prochain chapitre !

Example of certificate of achievement
Example of certificate of achievement