



















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Ce document présente l'historique et les concepts fondamentaux de la programmation orientée objet (POO). Il aborde les origines de la POO dans les années 60 avec le langage Simula-67, puis son évolution dans les années 70 avec l'apparition des concepts de base tels que l'objet, l'encapsulation, le polymorphisme et l'héritage. Les années 80 ont vu l'émergence de nouveaux langages orientés objet comme Objective C, C++ et Eiffel. Enfin, les années 90 ont marqué l'âge d'or de l'extension de la POO avec le développement de la conception orientée objet et des bases de données orientées objets. Le document explique également les notions clés de la POO comme la classe, l'objet, l'instanciation, l'encapsulation, la visibilité des attributs, les différents types de méthodes, la surcharge et l'héritage. Il s'agit d'un document de référence détaillé sur les fondements de la programmation orientée objet.
Typology: Exercises
1 / 27
This page cannot be seen from the preview
Don't miss anything!




















A. U. : 10-
Les premiers pas de la programmation orientée objet
Les années 70 : SmallTalk , apparition des concepts de base :
objet, encapsulation, polymorphisme, héritage
, etc.
Les années 80 : La Montée en puissance de l’orienté objet
Apparition de nouveaux langages : Objective C ,C++, Eiffel, Common Lisp ObjectSystem
A. U. : 10-
Programmes structurés en procédures et fonctions,
Des problèmes en cas de modification de la structures des données,
Chaque fonction ou procédure résout une partie du problème,
Unité logique : objet,
Programmation par « composants »,
Facilité de l’évolution du code,
Améliorer la conception et la maintenance des grands systèmes,
A. U. : 10-
Unité logique : l’objet
Une identité : permet de distinguer un objet d’un autre objet.
Un état : représenté par des attributs (variables) qui stockent desvaleurs.
Un comportement : défini par des méthodes (procédures) quimodifient des états.
Moto
Couleur : noir Vitesse : 150 Km/h^ Accélérer^ Freiner
A. U. : 10-
Un objet est défini à la fois par des informations
: données ou attributs ou
variables d’instances ; et des comportements
: traitements ou méthodes ou
opérations.
Moto
Couleur Vitesse_limite^ Accélérer^ Freiner
Objet Moto
Lorsque des objets ont les mêmes attributs et comportements : ils sont regroupésdans une famille appelée :
Les objets appartenant à celle-ci sont les instances de cette classe. Æ
est la création d’un objet d’une classe.
Moto
Couleur : noir Vitesse_limite : 200 Accélérer Freiner
Moto
Couleur : rouge Vitesse_limite : 250^ Accélérer^ Freiner
A. U. : 10-
De point de vue utilisation, un objet est une boite noire qui offre un certain nombre de méthodes permettant d’interagir avec lui.
Exemple :un poste de TV est une « boite noire » ayant pour interface
: un écran, des
HP et une télécommande. Pour changer de chaine, il suffit de d'appuyer sur une touche de la télécommande.
Peu importe ce qui se passe réellement en interne
.
A. U. : 10-
L’ensemble des méthodes proposées par un objet est appelé l’interface de cetobjet.
On dit qu’un objet est encapsulé par son interface : la seule manière d’interagiravec cet objet est d’invoquer une méthodes de son interface. Peu importe de quoicet objet est réellement constitué, ce qui est important c’est les services (lesméthodes) qu’il peut fournir.
Objet
Interface
Publique : veut dire que les attributs ou les méthodes sont disponibles pour tout lemonde
Privé : veut dire qu’aucune autre classe ne peut accéder au contenu de l’attribut etl’implémentation de la méthode concerné,
Protégé : l'accès aux données est réservé aux fonctions des classes héritières
, c'est-à-
dire par les fonctions membres de la classe ainsi que des classes dérivées.
A. U. : 10-
Les
constructeurs
qui permettent d’initialiser les champs d’un objet
Un constructeur est une méthode
particulière, sans valeur de retour, portant
le même nom que la classe
Déclaration :
Moto (String nouvelle_couleur){
Couleur= nouvelle_couleur;
Les
méthodes d’accès
qui permettent de renvoyer les informations relatives à un objet
Déclaration :
int getVitesse(){
return vitesse;
Les
méthodes d’altération
qui modifient l’état d’un objet (les valeurs de certains
champs), donc elles comportent certains contrôlent pour valider les nouvellesvaleurs.
Déclaration :
void setVitesse (int nouvelleVitesse){
vitesse = nouvelleVitesse;
A. U. : 10-
Le constructeur
: c'est une méthode qui est appelée automatiquement à chaque
fois que l'on crée un objet basé sur cette classe.
Le destructeur
: c'est une méthode qui est automatiquement appelée lorsqu'un
objet est détruit, par exemple à la fin de la fonction dans laquelle il a été déclaréou lors d'un
delete
si l'objet a été alloué dynamiquement avec
new
Le destructeur
libère la zone mémoire allouée par le constructeur. Il s’exécute à
la fin du programme ou d'un bloc où des objets locaux ont définis.
Exemple de surcharge : la surcharge de constructeurs
Déclaration :
Moto (int v){
vitesse = v;
Moto (int v, String c){
vitesse = v; couleur= c;
Moto (String c){
couleur= c;
A. U. : 10-
L'héritage est un mécanisme qui facilite la réutilisation du code et la gestion deson évolution. Elle définit une relation entre deux classes :
Une classe mère ou super classe
Une classe fille ou sous classe qui hérite de sa classe mère
les objets d'une classe fille ont accès aux données et aux méthodes de la classe parent etpeuvent les étendre.
Les sous classes peuvent redéfinir les variables et les méthodes héritées.
Les méthodes des clases filles sont redéfinies avec le même nom, les mêmes types et lemême nombre d'arguments