Wat is programmabegrip?
Programmabegrip is het vermogen van een programmeur om te begrijpen wat de broncode van een computerprogramma doet. In informatica-instructie wordt het begrip van een programma vaak over het hoofd gezien ten gunste van het leren van de mechanica en syntaxis van de computertaal die wordt onderwezen. Begrijpelijke code schrijven is echter een universele behoefte, ongeacht de computertaal waarin deze is geschreven. Als een programmeur een bibliotheek of stuk code schrijft, maar niemand kan achteraf bepalen wat het doet, kunnen het algoritme en de logica achter die code gemakkelijk verloren gaan. Het komt steeds vaker voor dat programmeurs hun eigen code niet kunnen ontcijferen, omdat deze vaak niet duidelijk en intuïtief is geschreven.
Er zijn twee hoofdstrategieën die programmeurs kunnen gebruiken om het programmabegrip te verbeteren, en elk heeft zijn eigen voor- en nadelen. De eerste methode is om documentatie aan code toe te voegen tijdens of na het maken van code, en de tweede is om code te schrijven met de nadruk op de structuur ervan. Een combinatie van beide benaderingen is nuttig voor de meeste programmeurs, hoewel sommige codebouwers de ene strategie verkiezen boven de andere. Welke methode te gebruiken is een kwestie van persoonlijke voorkeur door de programmeur, en elke poging om code te verduidelijken is veel beter dan helemaal geen.
Het toevoegen van documentatie aan code is eenvoudiger van de twee methoden, en als het goed wordt uitgevoerd, kan het een zeer nuttige steun zijn voor een programmeur die niet bekend is met de taal waarin de code is geschreven. De meeste computertalen hebben een specifieke documentatiestijl om het programmabegrip te helpen begrijpen. Als de codedocumentatie grondig is geschreven, kan de eerste stap van een nieuwe programmeur zijn om alle documentatie en opmerkingen te lezen om inzicht te krijgen in hoe het programma werkt, zonder de code te hebben gelezen. In plaats van afhankelijk te zijn van de syntaxis van de code en de mechanica, kan de programmeur zien wat er gebeurt in platte tekst en de tekst vervolgens relateren aan wat er op een bepaalde plaats gebeurt. Bij het toevoegen van documentatie aan code moeten programmeurs echter voorzichtig zijn, omdat te veel documentatie verwarrend en opdringerig kan zijn in plaats van nuttig.
Bij het schrijven van code met de nadruk op structuur, gaat een programmeur ervan uit dat alle andere beheerders die naar zijn of haar code kijken, een vergelijkbare kennis van de syntaxis en mechanica van de taal hebben. Soms is dit een geldige veronderstelling, maar er kan niet altijd op worden vertrouwd. Programmabegrip grotendeels gebaseerd op structuur is mogelijk, maar het kost aanzienlijk meer werk van de kant van de oorspronkelijke programmeur om het te vergemakkelijken. De mechanica en syntaxis van de taal moeten exact worden gevolgd, evenals alle stilistische conventies, en alles moet consistent zijn. Wanneer u op deze manier code schrijft, moet een programmeur zich er altijd van bewust zijn dat wat hem duidelijk is, voor een ander misschien niet duidelijk is.
Zelfs als u code schrijft met oog voor later begrip van het programma, kan later aanvullende documentatie of structurele wijzigingen nodig zijn. Dit is een natuurlijk onderdeel van code-onderhoud en geen storing door de programmeur. De taak van een programmeur is om op zoveel mogelijk begripsproblemen te anticiperen, maar ze zijn niet altijd gevangen.