G. Falquet, CUI, Université de Genève 1 de 31
Types abstraits
Abstraction - motivations
Notion de type abstrait
Spécification algébrique des TA
G. Falquet, CUI, Université de Genève 2 de 31
Abstraction
Abstraction = se libérer des détails, simplifier, généraliser
En structures de données
Modèle de la machine : ensemble de cellules mémoire
Types de base : entiers, flottants, caractères, pointeurs
Types composés : tableaux de T, n-tuples de T1, T2, …
Types abstraits : indépendant de la représentation
G. Falquet, CUI, Université de Genève 3 de 31
Types et ensembles
Le même ensemb
le peut représenter des choses de différentes natures
Ensemble des nombres :
1.date (en nombre de jours depuis le 01.01.1900)
2.poids (en grammes)
3.durée (en jours)
4.longueur (en mètres)
Mais les opérations sont différentes
date –
date
OK
date + date
???
poids + poids
OK
poids * poids
???
durée + durée
OK
longueur * longueur
OK
G. Falquet, CUI, Université de Genève 4 de 31
Types et opérations
Un type de données est caractérisé par ses valeurs ET ses opérations
On n’a pas forcément besoin de connaître les valeurs
Pour autant qu’on puisse en extraire l’information voulue par une opération
nom_jour : date --> chaîne de car
actères
nom_mois : date --> chaîne de car
actères
mois : date --> entier
année : date --> entier
Peu importe la représentation utilisée pour les valeurs de date :
nb. jours depuis 1.1.1900, nb. minutes depuis 1.1.1900, 3 entiers (J, M, A), etc.