Pour résumer, en algorithmique vous écririez quelque chose ressemblant plus ou moins à ça : 
Type
Structure tEcran
type :chaîne
marque :chaîne
modèle :chaîne
diagonale :entier
hauteur :reel
largeur :reel
profondeur :reel
poids :reel
connecteur :chaîne
resolution : tableau[1..10] de chaînes
FinStruct
Procédure changer_resolution(...)
Procédure mise_en_veille(...)
Procédure rallumer(...)
Procédure regler_affichage(...)
...
C’est  correct,  possible,  vous  devrez  probablement  jouer  avec  les  pointeurs  et  références  pour  le  passage  de  la 
structure,  donc  pourquoi  pas.  Des  milliers  de  programmes  ont  été  développés  ainsi.  Posez­vous  cependant  la 
question : pourquoi ne pas associer les propriétés d’un objet et les traitements associés en un même ensemble ? 
Quand vous programmez en objet, la question à se poser est "Sur quoi porte le programme ?". La réponse est : sur 
les écrans. Puisque le programme porte sur les écrans, pourquoi ne pas tenter de répondre à la question posée à la 
fin du point précédent ? La réponse est "pourquoi pas", et c’est le but ou l’un des buts de la programmation objet. 
Vous avez déjà indirectement croisé plusieurs fois le chemin des objets. Les chapitres précédents vous ont montré 
des tableaux, des structures, des chaînes de caractères, des références. En Java tous ces éléments sont des objets. 
En fait, tout ce que vous avez déclaré avec le mot­clé "new" est un objet. 
Dans  les  exemples,  vous  avez  probablement  remarqué  que  la  saisie  de  chaînes  au  clavier,  la  lecture  et 
l’enregistrement de fichiers et même les instructions nécessaires à l’affichage passent par des objets. Si ce n’est pas 
le cas, le principe des structures devraient vous aider à mieux comprendre. 
En  langage  procédural  ou  en  algorithmique,  une  structure  est  déjà  appelée  un  objet,  dans  un  certain  nombre 
d’ouvrages d’algorithmique un peu anciens (années 1980), dans le sens où elle contient un ensemble de données 
cohérentes sur un sujet bien précis. La structure tarticle contenait toutes les propriétés d’un article. Vous accédez à 
une information à travers le point "." ou la flèche "→" si l’enregistrement est une référence. 
La structure code donc toutes les propriétés d’un objet réel ou abstrait. Cependant tous les traitements associés 
sont dans des sous­programmes à part. 
Maintenant, regardez ces lignes issues de l’exemple en Java sur les fichiers : 
String ligne;
...
passwd[cpt]←ligne.split(":") 
...
La  variable  ligne  est  une  chaîne  de  caractères.  Pourtant,  vous  avez  l’impression  qu’elle  est  utilisée  comme  un 
enregistrement de structures, mais à l’aide du point "." vous accédez non pas à des enregistrements, mais à des 
fonctions associées à la variable ! Pourquoi ? La réponse se trouve dans une définition de l’objet : 
Dans les langages objet, les données et les traitements qui manipulent ces données sont regroupés au sein d’une 
même entité appelée objet. 
En Java les objets sont décrits avec le mot­clé "class". En algorithmique ils le sont avec le mot­clé "classe". 
Quelles sont les propriétés d’une chaîne de caractères ? 
q La chaîne elle­même, composée d’une suite de caractères. 
Quels sont les traitements applicables à une chaîne ? 
q Le calcul de sa longueur, 
Programmation objet
- 3 -
© ENI Editions - All rigths reserved - Jonifar lina
196
Précédent

- 196/220

Suivant