Le langage Java
Jean-Baptiste Yun`es
Universit´e Paris 7 - Denis Diderot
Jean-Baptiste.Yun[email protected]
1
G´en´eralit´es
La programmation Orient´ee Objet n’est pas un concept nouveau
(smalltalk/simula - ann´ees 60).
De nombreux langages orient´es objets existent, dont les principaux
sont : smalltalk, eiffel, C++ et Java.
Aujourd’hui (presque) tous les langages de programmation sont
orient´es objets.
2
Histoire naturelle
donn´ees structur´ees (struct de C, record Pascal, etc)
donn´ees structur´ees + fonctions (modules)
mod`eles, types et instances (objets et classes)
h´eritage, polymorphisme (sorte de)
encapsulation (visibilit´e)
impl´ementation/sp´ecification (types abstraits)
liaison dynamique/tardive
La POO facilite :
la s´eparation de l’impl´ementation et de la sp´ecification
(conception/r´ealisation)
la r´eduction du couplage entre entit´ees (couplage fort `a
l’int´erieur, couplage faible `a l’ext´erieur),
la construction d’entit´es logicielles r´eutilisables (composants)
3
Un exemple : une pile
Une pile est un “objet” sur lequel nous pouvons agir :
en lui donnant un “objet” `a ajouter (“empiler”),
en lui demandant de retrouver (“d´epiler”) un objet
pr´ec´edemment empil´e,
en lui demandant si il y a quelque chose `a d´epiler
Cette description informelle est une sp´ecification abstraite de ce
que nous appelons “pile” (c’est souvent sujet d’infinies discussions)
Une description plus compl`ete devrait indiquer en plus les
conditions n´ecessaires au bon fonctionnement des actions (d´epiler
dans un pile vide ?), ainsi que les propri´et´es (axiomes) v´erifi´ees par
toute pile (une pile “neuve” est vide, apr`es empilement une pile
n’est pas vide, d´epiler(empiler(objet)) = objet).
Quelques remarques :
Cette description est ind´ependante de la repr´esentation d’une pile
4
r´eelle (toute pile v´erifie la description pr´ec´edente) : sp´ecification
(divers formalismes existent).
On doit pouvoir r´ealiser des piles comme on le d´esire (en utilisant
des tableaux, des listes) pourvu qu’elles soient conformes `a la
sp´ecification : impl´ementation (notion de correction).
L’encapsulation doit assurer que les utilisateurs d’un objet pile
quelconque ne pourront atteindre la repr´esentation interne de
l’objet : s´ecurit´e et couplage faible.
5
1 / 128 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 !