Information Technology Reference
In-Depth Information
➤
Exemples d'importation et d'exportation d'objets
dans les langages de programmation de haut niveau
Dans un langage tel que Ada, le concept de module se traduit par celui de
paquetage
.
Un paquetage est divisé en deux parties : une partie spécification qui contient la
déclaration des objets du paquetage accessible depuis d'autres modules et une partie
corps qui contient la définition des objets eux-mêmes, qu'ils soient exportés ou restent
privés. Dans ces paquetages, l'importation d'objets externes provenant de biblio-
thèques du langage s'effectue grâce à la clause d'importation with. Ainsi, le module
recherche s'écrit :
package recherche is
procedure chercher_livre (liste_livre : out liste, mot_cle :
➥
in string(1.20));
procedure reserver_livre (cote_livre : in string(1.20));
end;
with la_bibliotheque; -- importation des objets de la bibliotheque
package body recherche is
procedure chercher_livre (liste_livre : out liste, mot_cle :
➥
in string(1.20)) is
begin
corps de la procedure qui utilise la fonction lire_fichier
➥
de la bibliotheque la_bibliotheque :
➥
appel sous forme la_bibliotheque.lire_fichier
end;
procedure reserver_livre (cote_livre : in string(1.20)) is
begin
corps de la procedure qui utilise la fonction ecrire_fichier
➥
de la bibliotheque la_bibliotheque :
➥
appel sous forme la_bibliotheque.ecrire_fichier
end;
end;
Dans un langage tel que C, l'exportation des objets s'effectue par le biais de la
clause extern. L'objet exporté ainsi est rendu accessible à tout autre module.
➤
Définition des notions de liens utilisables et de liens à satisfaire
Trois catégories d'objets peuvent donc être répertoriées au sein d'un module :
-les objets
internes
au module, inaccessibles de l'extérieur car ils ne sont pas exportés
(
objet privé
). À ces objets, le compilateur ne fait correspondre aucun lien (exemple
l'objet lire_reponse dans le module interface);
- les objets internes au module mais accessibles de l'extérieur (
objet exporté ou public
).
À ces objets, le compilateur fait correspondre un
lien utilisable (LU)
(exemple
l'objet chercher_livre dans le module recherche);
Search WWH ::
Custom Search