Interface
Interface
Een interface is een vast omlijnd contactpunt tussen de aanbieder van een dienst of product, en de gebruiker daarvan.
Een interface vormt een dubbelzijdige abstractie:
- de implementatie hoeft alleen aan het interface te voldoen. Daarmee abstraheer je van de details van het gebruik.
- voor het gebruik is alleen het interface van belang. Daarmee abstraheer je van de details van de implementatie.
Interfaces zijn vaak gestandaardiseerd. Dit is van belang als er meerdere aanbieders zijn van hetzelfde interface.
Interfaces komen ook buiten de ICT voor: denk bijvoorbeeld aan het stopcontact, of het gebruikersinterface van een auto.
Binnen de ICT komen interfaces op alle niveaus voor, van hardware-interfaces als USB, via procedures en functies als interface, tot gebruikersinterfaces van operating systems en toepassingen.
Voorbeelden:
- hardware-interfaces (USB,
Wat moet je weten over interfaces?
Definitie van het interface
Definieer een interface zo dat
- het een goede scheiding vormt tussen gebruik en implementatie (separation of concerns). Het interface moet geen implementatie-details later doorschemeren (implementation bias).
- het gebruik gemakkelijk is, met zo min mogelijk aanleiding tot foutief gebruik.
- dit stabiel kan blijven, bij veranderingen in de implementatie die te voorzien zijn.
Gebruik
Houd je aan de regels van het gedocumenteerde interface. Soms is het mogelijk om ongedocumenteerde eigenschappen te gebruiken; dit kan een werkende oplossing opleveren. Maar er is geen enkele garantie dat dit in de toekomst ook het geval zal zijn.
Implementatie
De implementatie is de manier waarop het product of de dienst gemaakt is.
- Voor het gebruik is in eerste alleen het interface van belang, niet de implementatie.
- Implementaties kunnen verschillen met betrekking tot hun kwaliteit en efficiëntie.
In de wereld van