Wat is defensief programmeren?
Defensief programmeren is het maken van code voor computersoftware die is ontworpen om problematische problemen te voorkomen voordat ze zich voordoen en het product stabieler te maken. Het basisidee achter deze aanpak is om een programma te maken dat correct kan worden uitgevoerd, zelfs door onvoorziene processen of wanneer onverwachte invoer door gebruikers wordt gemaakt. Defensieve programmering berust vaak op een ietwat paradoxale combinatie van het elimineren van onnodige code terwijl voldoende hoeveelheden worden gegenereerd om alle mogelijke acties van de gebruiker te kunnen verwerken. Uitgebreide testen zijn ook belangrijk voor dit proces, net als het maken van software die gemakkelijk kan worden gecontroleerd en gecontroleerd.
In veel opzichten lijkt het concept van defensief programmeren veel op dat van defensief rijden, omdat problemen worden overwogen voordat ze zich voordoen. Een veel voorkomende methode om dit te proberen is door het maken van code die is bedoeld om met elk mogelijk scenario te werken. Programmeurs proberen meestal manieren te bepalen waarop gebruikers waarschijnlijk invoer invoeren of proberen software te gebruiken die mogelijk buiten de verwachte parameters valt. Het gebruik van defensieve programmering is gebaseerd op de basis van de code zelf, die is ontworpen om vreemde invoer te kunnen verwerken zonder te crashen of een foutgebeurtenis tegen te komen.
Schijnbaar in tegenstelling tot dit element van defensief programmeren, moet goed geschreven code echter geen onnodige vermeldingen bevatten. Hoe meer regels code die deel uitmaken van een programma, hoe meer mogelijkheden er zijn om fouten te introduceren. Defensieve programmeerpraktijken moedigen ontwikkelaars doorgaans aan om onnodige code te verwijderen en programma's waar mogelijk te stroomlijnen. Er moet daarom een evenwicht worden gevonden tussen programmering die rekening houdt met onverwachte scenario's en code die teveel onnodige inhoud bevat zonder een voordeel te bieden.
Testen is een van de belangrijkste aspecten van defensief programmeren. Ondanks veel moeite om ervoor te zorgen dat code perfect is, missen ontwikkelaars bijna altijd een fout of maken ze code met onverwachte resultaten. Door grondig testen door professionele testers kan een ontwikkelaar honderden uren productgebruik hebben om fouten te vinden voordat software wordt vrijgegeven.
De code zelf die is gemaakt in defensief programmeren is ook een essentieel aspect van dit proces. Het moet niet alleen zoveel mogelijk worden gestroomlijnd, maar het moet ook duidelijk en beknopt worden gepresenteerd. Audits worden vaak door een ontwikkelaar gebruikt om gemaakte code te beoordelen. Hierdoor kunnen andere programmeurs zien wat er is gedaan en is leesbare code belangrijk om dit een realistisch onderdeel van de ontwikkeling te laten zijn.