.
Inf 431 – Cours 7
Modularit´e
Programmation
par objets (1/2)
jeanjacqueslevy.net
secr´etariat de l’enseignement:
Catherine Bensoussan
Aile 00, LIX,
01 69 33 34 67
www.enseignement.polytechnique.fr/informatique/IF
1
.
Plan
1. Modularit´e
2. Paquetages et espace des noms
3. Contrˆole d’acc`es
4. Programmation par objets
5. Sous-classes et conversions de type
6. Types disjonctifs et sous-classes
2
.
Programmes et abstraction (1/3)
choix des structures de donn´ees
isoler les fonctionalit´es
s´eparer les entr´ees/sorties du corps du programme
simplicit´e de la signature des fonctions
´el´egance de l’´ecriture
d´ecoupage d’un programme en classes
Sp´ecification Programmation Correction
G´enie logiciel (Software engineering)
La programmation est une des activit´es les plus complexes jamais
entreprises par l’homme.
Windows XP =50 millions lignes de code,
Linux =30 millions lignes de code,
autres exemples.
3
.
Programmes et abstraction (2/3)
d´ecomposition d’un programme en modules
un module a deux parties :
l’interface accessible depuis l’ext´erieur du module
l’impl´ementation accessible de l’int´erieur du module
principe d’encapsulation
Une file a 3 op´erations : construction, ajouter, supprimer
Deux impl´ementations possibles : tableau circulaire, liste
L’ext´erieur n’a pas `a connaitre l’impl´ementation
On peut changer l’impl´ementation sans que l’ext´erieur ne s’en
rende compte
on peut composer les modules pour en faire de plus gros
4
.
Programmes et abstraction (3/3)
structure de bloc dans les langages de programmation
variables locales ou globales
encapsulation
insuffisant, car les variables communes `a plusieurs fonctions
deviennent globales
accessibles depuis l’ext´erieur
constructions sp´eciales dans les langages de programmation
modules ou classes
donn´ees et fonctions priv´ees ou publiques
5
1 / 32 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !