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