Terug naar begrippenlijst
4 minuten

Abstraction

Abstraction (of abstractie) is een fundamenteel concept in programmering en softwareontwikkeling. Het betekent het verbergen van complexe details en alleen de essentiële kenmerken van iets tonen. Dit maakt code eenvoudiger te begrijpen, te onderhouden en te hergebruiken.

Geschreven door Thijn de Haas

Zwaaiende emoji

Thijn Lead developer

Meer over Thijn

Inhoudsopgave

De kunst van het verborgen genie

Abstraction is als een goocheltruc in de wereld van programmeren: je ziet het eindresultaat, maar de ingewikkelde details blijven verborgen. Het is een manier om complexiteit te temmen en code overzichtelijk te houden. Je hoeft niet te weten hoe iets precies werkt, zolang je het maar kunt gebruiken.

Voorbeeld

Denk bijvoorbeeld aan een auto: als bestuurder hoef je niet te weten hoe de motor precies werkt om ermee te kunnen rijden. Je gebruikt gewoon het gaspedaal, de rem en het stuur – dat is abstractie in actie!

Waarom abstraction je beste vriend is

Abstractie is de ruggengraat van schone code en goed gestructureerde software. Waarom? Simpel: het vermindert ruis, omdat je niet alles hoeft te begrijpen om ermee te werken. Hierdoor kun je je concentreren op wat écht belangrijk is, zonder afgeleid te worden door onnodige details.

Daarnaast verhoogt het de herbruikbaarheid; een abstracte functie kan keer op keer worden ingezet zonder dat je telkens de onderliggende logica hoeft aan te passen. Dit maakt onderhoud een stuk eenvoudiger. Kleine wijzigingen kunnen worden doorgevoerd zonder de rest van de code te breken. En niet onbelangrijk: abstractie versnelt samenwerking binnen teams. Ontwikkelaars kunnen zich focussen op hun eigen taken zonder vast te lopen in complexe implementaties. Zo ontstaat code die intuïtief aanvoelt, efficiënt werkt en vrij is van onnodige ballast.

Veelgestelde vragen

Het maakt code simpeler, beter leesbaar en makkelijker te onderhouden. Je hoeft je niet druk te maken over onnodige details.

Als je een functie, klasse of API gebruikt zonder de interne werking te begrijpen, dan heb je te maken met abstractie.

Absoluut! Sterker nog, ze werken vaak samen. Een goed ontworpen klasse gebruikt encapsulation om data te beschermen en abstractie om complexiteit te verbergen.

Een auto is een perfect voorbeeld. Je gebruikt het stuur, gaspedaal en rem, zonder te weten hoe de motor werkt. Datzelfde principe geldt voor software.

Thijn de Haas Lead developer

Meer over Thijn

Mijn programmeeravontuur begon rond mijn twaalfde, toen ik ontdekte dat je met code vrijwel alles kunt maken. Ik begon met het bouwen van kleine projecten en startte al snel mijn eigen hostingdienst, wat me veel leerde over maatwerkcode, serverbeheer en het koppelen aan websites. Deze kennis pas ik nu dagelijks toe in mijn werk aan websites en applicaties.

Als student Applicatieontwikkelaar liep ik drie stages bij Wux, waarbij ik tijdens de eerste stage mijn eerste bedrijf startte, deels op advies van Bo. Deze ervaringen vormden het fundament van mijn rol als lead developer en mede-eigenaar van Wux. Met een constante interesse in nieuwe technieken en het meedenken naar de beste oplossingen, zet ik mijn expertise dagelijks in om complexe vraagstukken op te lossen samen met mijn team.

Twee mannen in overleg tijdens het werk achter hun computerschermen
Zwaaiende emoji

Thijn Back-end developer

Op zoek naar slimme software-oplossingen die jouw bedrijf efficiënter maken?

Het team van Wux ontwikkelt maatwerk software die aansluit bij jouw behoeften. Neem vandaag nog contact op en ontdek hoe we jouw bedrijf elke dag succesvoller kunnen maken.

Meer over software