Samenvattend: Met interfaces lever je meer waarde aan je klanten header image

Samenvattend: Met interfaces lever je meer waarde aan je klanten

dinsdag 30 juni 2020 ·Leestijd: 2 minuten
contacteer auteur:

Nog even samenvattend over interfaces en waarom het verstandig is ze toe te passen:

Je kan je applicatie beter testen als je gebruik maakt van interfaces. Door de implementatie onbekend te laten voor het gedeelte van de applicatie dat je wilt testen, kan je situaties nabootsen zonder afhankelijk zijn van het daadwerkelijke bestaan van die situaties: door niet per se gebruik te maken van je daadwerkelijke harde schijf, bijvoorbeeld, kan je in de implementatie van een interface doen alsof de schijf vol is - wat gebeurt er dan? Hoe los je dit op? Zonder interfaces is dit lastig af te vangen. Je hebt ook geen volledige database nodig, als je bijvoorbeeld een IDatabase hebt, maar alleen een implementatie met daarin de data en functionaliteit die je gaat testen.

De applicatie is gemakkelijk uit te breiden: Een interface is een contract, een afgesproken set regels en gedrag. De implementatie dient de functie X() te bevatten, die wordt aangeroepen, en geeft een waarde terug van type Y. Hoe je dat doet en wat er nog meer gebeurt binnen de functie, dat is niet van belang. Als je een nieuwe implementatie maakt, dan kan je die op zich testen, maar wordt zonder morren geïntegreerd binnen de rest van de applicatie.

Het onderhouden van de software is eenvoudiger: je dwingt jezelf (en je collega's) impliciet om code te groeperen in logische plekken en door interfaces verstandig toe te passen, hoeven wijzigingen op zo min mogelijk plekken te worden gedaan. Dat maakt de code robuster, omdat complexiteit software foutgevoeliger maakt.

De vorige blogitems over interfaces, het gebruik ervan en de voordelen, komen op het volgende neer: programmeren middels interfaces, niet implementaties. Je kan je applicatie logisch in elkaar zetten, zonder je (aanvankelijk) bezig te houden met de daadwerkelijke werking van de code. Dit zorgt er voor dat je je ook meer bezig gáát houden met de logica van de applicatie. Met IFileSystem kan ik iets wegschrijven via SaveAs() of ophalen via ReadAsString() en dat is de enige logica waarin ik in eerste instantie in geïnteresseerd ben, in plaats van System.IO.File.Etcetera().

Bovenstaande samengevoegd zorgt er voor dat je sneller meer functionaliteit kan toevoegen aan je applicatie en dus meer waarde kan leveren aan je klanten!


Andere blogartikelen

B2B E-commerce… Wakker worden!
Geschreven door
op dinsdag 28 juni 2022
Veel B2B-bedrijven in blijven hangen in; nauwelijks vindbare, verouderde B2B e-commerce websites met minimale conversiemogelijkheden en een betreurenswaardige gebruikerservaring. Zonde!
B2B Leadgeneratie: Alles wat je altijd al wilde weten!
Geschreven door
op maandag 27 juni 2022
B2B online leadgeneratie is het proces van het identificeren van de ideale klanten voor uw product of dienst, en hen vervolgens overhalen tot aankoop. Het is een essentiële activiteit voor B2B sales- en marketingteams.
Wat maakt een B2B webshop succesvol?
Geschreven door
op zondag 26 juni 2022
De opmars van de B2B webshop neemt toe. Regelmatig krijgen wij de vraag of er een groot verschil is tussen een consumentgerichte webshop en een puur B2B gedreven webshop. In deze blog leggen wij u uit hoe een B2B webshop succesvol kan zijn en worden.
Open Nieuwsbrief Inschrijving Footer

E-book

Zo wordt uw website een lead generator 
In 3 stappen uw website van visitekaartje naar salesfunnel

Download het E-book â€º