Vous êtes sur la page 1sur 3

POO INTRODUCTION A LA POO

CHAPITRE 0 :

INTRODUCTION A LA POO
Objectif spcifique Rappel sur les types abstraits de donnes Elments de contenu I. Rappel : les types abstraits de donnes II. Exemple : comment penser en OO Volume Horaire : Cours : 1 heure 30 TD : 0 heure

0.1

Rappel : Les Types Abstraits de donnes


0.1.1 Dfinition :

Un type de donnes abstraites (TDA) peut tre reprsent comme labstraction sur les techniques de reprsentation des donnes : fonctionnalit (oprations) avant tout. On peut dire quun TDA est constitu dun modle mathmatique et les oprations dfinies sur ce modle. Gnralement, nous voulons construire des algorithmes en termes de TDA, mais la mise en uvre dun algorithme dans un langage de programmation ncessite que nous trouvions un moyen de reprsenter les TDA laide des types de donnes et des oprations prdfinis dans le langage lui-mme. Pour reprsenter le modle mathmatique sous jacent un TDA : il faut recourir des structures de donnes, qui sont des ensembles de variables, priori de types diffrents, relies de multiples faons. Lincarnation dun TDA est la traduction, dans les termes dun langage de programmation, la dclaration qui dfinit une variable comme appartenant ce type de donnes abstrait, et lcriture dans un mme langage dune procdure pour chaque opration relative un TDA. Une incarnation ncessite le choix dune structure de donnes pour reprsenter le TDA : chaque structure de donne est construite partir de types prdfinis du langage de programmation hte, laide de ses possibilits de structuration des donns. Par exemple les tableaux (array) et les enregistrements (record) sont deux outils particulirement importants en Pascal.

Mlle I.Sghaier

- 1

POO INTRODUCTION A LA POO

En ralit, tout informaticien utilise dj les TADs, parfois sans le savoir. En effet, dans un algorithme il doit manipuler des nombres entiers ou rels, il ne se proccupe pas de la reprsentation de ces nombres, mais uniquement des proprits intrinsques des quatre oprations habituelles (+,-,*,/). On prsente ici par lexemple la spcification dun type bien connu, celui des boolens : le TDA boolen.

0.2

Exemple : concept POO

Consigne : on veut faire un programme de gestion du personnel dune entreprise informatique. On y trouve des ingnieurs, des techniciens, des directeurs et des ouvriers dentretiens (concierge, femme de mnage).

1re solution : Programmation procdurale classique => Que veut on faire ?


Struct ingnieur Nom Prnom lecture-ingnieur() affiche-ingnieur() Donne : attributs du type calc-salaire() Salaire Num-telephone Date-embauche Liste-diplomes Spcialit Struct technicien Nom Prnom Salaire Num-tlphone Date-embauche Spcialit lecture-technicien() affiche-technicien() calc-salaire()

Type

Mlle I.Sghaier

- 2

POO INTRODUCTION A LA POO

Laboratoire

Struct directeur

Nom Prnom Salaire Num-tlphone Num-fax Num-bureau Service

lecture-directeur() affiche-directeur() calc-salaire()

2 me solution : Programmation oriente objet => De quoi parle-t-on ?


classe Personnel Nom Prnom Salaire Num-telephone Lecture-pers() Afficher-pers() affiche-ingnieur() Mthodes de la classes Attributs de la classe Nom de la classe

Classe Ingnieur Date-embauche Spcialit Listes-diplomes Lecture-ingen() Affch-ingen() Calc-sal-Ingen()

classe Technicien Date-embauche Spcialit laboratoire lecture-technicien() Affiche-technicien() Calc-salaire-techn()

classe Directeur Numero-fax num-bureau Service lecture-direct() affiche-directeur() calc-salaire-sirect()

Mlle I.Sghaier

- 3