Wat is generieke programmering?
Generieke programmering is een populair type computerprogrammering dat zodanig is geschreven dat het de meest efficiënte code creëert die mogelijk is, terwijl de code op zoveel mogelijk situaties kan worden toegepast zonder dat de oorspronkelijke code zelf hoeft te worden gewijzigd. Nadat de code is geschreven, kan deze alleen de exacte functies uitvoeren waarvoor deze is geschreven. Door generieke programmering te gebruiken om codes te maken die in een aantal verschillende situaties werken, terwijl ze toch dezelfde algemene basisfunctie uitvoeren, kunnen programmeurs een enkel stuk code in verschillende programma's gebruiken zonder ooit het origineel te wijzigen.
In de jaren zeventig debuteerde generieke programmering in de programmeertalen Ada en CLU. Kort daarna begonnen andere programmeertalen, zoals Java en C ++, generieke programmering te gebruiken om programmeercode te vereenvoudigen, terwijl dezelfde code in meerdere scenario's kon worden gebruikt. Elke programmeertaal heeft een specifieke manier om deze code te gebruiken en verschillende termen om deze te beschrijven. "Generieken", "sjablonen" en "geparametriseerde typen" zijn allemaal op een of ander punt gebruikt om te verwijzen naar instanties van generieke programmering.
Om dit soort programmeren te begrijpen, is het belangrijk om de basisconcepten te kennen van hoe een programmeertaal werkt. Als Paul bijvoorbeeld een programma wil schrijven dat twee getallen bij elkaar optelt, typt hij de computercode om twee objecten toe te voegen. Hij zou de computer dan vertellen dat die twee objecten getallen zijn en dat het uiteindelijke antwoord ook een getal moet zijn.
Hoewel het programma werkt zolang Paul twee nummers toevoegt, loopt het vast als hij iets anders samen probeert toe te voegen. Als Paul zou besluiten zinnen aan elkaar te rijgen om een paragraaf te vormen, crasht het programma omdat het letters en geen cijfers zal vinden. Paul kan dit probleem echter oplossen door generieke programmering te gebruiken om het oorspronkelijke programma te vertellen een aantal variabelen te accepteren - zowel cijfers als letters - en dus kan het programma zinnen maken of een toevoeging uitvoeren.
Niet alle programmeertalen hebben het concept van generieke programmering nodig om efficiënt te zijn. Degenen die het gebruiken zijn statisch getypte talen. Dit betekent eenvoudig dat de code als het ware in steen is gezet en niet kan worden gewijzigd terwijl het programma wordt uitgevoerd. Om deze reden kan het programma de invoer niet gebruiken als een programmeur heeft opgegeven dat de invoer van de gebruiker in de vorm van letters zou zijn en de gebruiker een cijfer zou typen. Programmeurs proberen dus alle logische gegevenstypen te voorzien die een gebruiker zou kunnen invoeren, of het nu cijfers, letters of symbolen zijn, en maken een programma dat zich hierop kan aanpassen.