EGL utilizza il termine "interfaccia" allo stesso modo in cui è utilizzato nei linguaggi orientati
agli oggetti. Per EGL, un'interfaccia è un piano a cui deve attenersi un servizio.
In particolare, un'interfaccia contiene una o più funzioni
prototipo,
o riepiloghi di funzioni. Questi prototipi non sono funzioni utilizzabili, ma vengono utilizzati per
predisporre i piani per le funzioni reali.
Ad esempio, si desidera scrivere un'applicazione che esegua operazioni
matematiche come una calcolatrice. È possibile iniziare elencando tutte le operazioni matematiche necessarie per
l'applicazione (quali addizione, sottrazione e moltiplicazione), senza realmente scrivere il codice per eseguire queste
operazioni. In questo caso, si assegna un nome a ciascuna operazione e si specificano i parametri di
input e di output, ma non si scrive il codice di nessuna logica. In questo modo, vengono elencate le funzioni necessarie
all'applicazione EGL in un'interfaccia. Questa interfaccia potrebbe iniziare come segue:
interface myCalculatorInterface
//Function to add numbers together
function addNumbers(number1 decimal(10,2) in,
number2 decimal(10,2) in) returns (decimal(10,2));
//Function to subtract numbers
function subtractNumbers(number1 decimal(10,2) in,
number2 decimal(10,2) in) returns (decimal(10,2));
end
A questo punto, quando si è pronti a iniziare la codifica del servizio, è possibile
utilizzare questa interfaccia sia come punto di partenza che come test per verificare che il piano venga seguito come
previsto.
Verrà richiesto raramente di scrivere un'interfaccia, ma in generale, l'uso delle interfacce per
descrivere i propri servizi è un buon metodo di programmazione.
- L'interfaccia consente di pianificare il servizio in tempo, ed EGL avvisa se il servizio
si allontana dall'interfaccia.
- Le interfacce forniscono un riepilogo sintetico dei dettagli dell'implementazione del servizio.
- Le interfacce possono essere utilizzate come requisiti per lo sviluppo o per la conformità.