Dans EGL, le terme "interface" a la même signification que dans les
langages orientés objets. Pour EGL, une interface définit un plan à suivre par un
service.
Plus précisément, elle contient un ou plusieurs
prototypes de fonction. Ces prototypes ne sont pas des fonctions utilisables en tant que telles, mais ils établissent les plans
de fonctions réelles.
Par exemple, supposons que vous deviez écrire une application qui exécute des
opérations arithmétiques comme celles d'une calculatrice. Vous pourriez commencer par établir la liste de toutes les
opérations arithmétiques nécessaires (comme l'addition, la soustraction et la multiplication) sans
écrire leur code d'exécution. Dans ce cas, vous choisiriez un nom pour chaque opération et vous définiriez
ses paramètres d'entrée et de sortie, toujours sans coder la moindre logique. Vous établiriez ainsi la liste des
fonctions dont aurait besoin l'application de service EGL dans
une interface. Une telle interface pourrait commencer comme ceci :
interface monInterfaceCalculette
//Fonction d'addition de nombres
function ajouterNombres(nombre1 decimal(10,2) in,
nombre2 decimal(10,2) in) returns (decimal(10,2));
//Fonction de soustraction de nombres
function soustraireNombres(nombre1 decimal(10,2) in,
nombre2 decimal(10,2) in) returns (decimal(10,2));
end
Ensuite, une fois prêt à commencer le codage du service,
vous pourriez utiliser cette interface à la fois comme point de départ et comme moyen
de vérifier que vous suivez le plan prévu.
Vous aurez rarement besoin d'écrire des interfaces,
mais leur utilisation pour décrire vos services est généralement une bonne pratique de
programmation :
- L'interface vous permet de planifier le service bien avant d'écrire la moindre ligne de code, et EGL vous
avertit ensuite si le service dévie de ce qui est prévu dans l'interface.
- L'interface donne une description concise d'un service, expliquant ce qu'il est capable de faire sans
pour autant fournir tous les détails de son implémentation.
- Les interfaces peuvent servir d'exigences pour le développement ou la définition de règles de conformité.