Skip to main content

Wat is een recursie?

In de informatica vereisen veel problemen een strategie voor het verdeelen en veroveren.De techniek van recursie maakt gebruik van deze strategie.In zijn eenvoudigste vorm is recursie een functie die een probleem in kleinere problemen verdeelt totdat het eindproduct kan worden bepaald.Computerwetenschappen werden opgericht op een platform van wiskunde en logica.Recursie maakt al vele decennia deel uit van dit grotere raamwerk en het is tegenwoordig te vinden in de meeste computerprogrammeertalen.

Dynamische programmering is een implementatie van recursie, die een probleem in componenten doorbreekt.Dit proces maakt het nestelen van problemen mogelijk binnen grotere problemen waarbij elk subprobleem het resultaat van het eerdere probleem vereist.Dit type functionele recursie is typisch binnen array -manipulatie.

Deze stijl van programmeren is gunstig omdat het een probleem vereenvoudigt in beheersbare componenten.Het heeft ook het voordeel van modulaire softwareontwikkeling.Deze modulaire aanpak maakt het maken van herbruikbare componenten mogelijk tijdens een computertoepassing.

Recursie werkt goed bij het maken van beveiligingsfuncties binnen computertoepassingen.Elk scherm van een applicatie kan specifieke bedrijfsregels vereisen die bepalen of velden zichtbaar moeten zijn.In plaats van de individuele beveiligingscode op elk scherm te schrijven, kan een recursieve functie worden gemaakt om alle schermen te lezen voordat de gegevens aan de gebruiker worden weergegeven en de nodige beperkingen van de zichtbaarheid toepassen.

Graphics Design is een ander gebied dat goed past voor een recursief probleem.Stel je een programma voor dat is ontworpen om een vierkant binnen een vierkant te creëren.Het kleinere vierkant zou dezelfde functionele vereisten hebben van het grotere vierkant, waarbij de enige wijziging de afmetingen van de twee vierkanten is.

Een sorteeralgoritme is een logisch probleem waarbij een lijst met items in een specifieke volgorde moet worden gesorteerd.Dit type probleemoplossing vereist de constante schuifling van een lijst in een nieuwe lijst, totdat de definitieve lijst als gewenst is besteld.Een goede aanpak voor het oplossen van dit probleem is om een recursieve lus te maken die de lijst blijft schudden totdat deze in de uiteindelijke lijst is gesorteerd.

De kracht van softwareautomatisering maakt het gebruik van recursie triviaal voor de meeste systeemeigenaren.Het wordt meestal verwacht dat beveiligingsfuncties en het sorteren van kolommen een eenvoudige klik van een muis of de slag van een toetsenbord vereisen.Onder de covers van deze eenvoudige actie ligt de complexiteit en elegantie van recursie in de praktijk.