Abstract datatype: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
JAnDbot (overleg | bijdragen)
k robot Anders: ko:추상적 자료형
k disamb stack
Regel 8:
Het concept van een ADT is op komen zetten in de jaren [[1960-1969|1960]] en [[1970-1979|'70]], toen de eerste programmeertalen met een duidelijk hoger abstractieniveau dan [[machinetaal]] en [[assembly]] gemeengoed werden. In dezelfde periode begon de informatica zich langzaam te onderscheiden als specifieke tak van de [[wiskunde]] en begonnen onderzoekers als [[John McCarthy]], [[Tony Hoare]], [[Donald Knuth]] en [[Edsger Dijkstra]] een stevige, formele basis op te bouwen voor het ontwerpen van [[computerprogramma|computerprogramma's]].
 
Naarmate het inzicht in dit ontwerpproces groeide, bleek het steeds wenselijker te zijn om op een hoger abstractieniveau te kunnen redeneren over [[datastructuur|datastructuren]] die in een programma gebruikt worden. Om een programma zo te modelleren dat de oplossing van een gegeven probleem inzichtelijk wordt, werd het bijvoorbeeld wenselijk gevonden om over een conceptuele [[stack (informatica)|stack]] te praten en niet alleen maar over een "[[array]] dat op een bepaalde manier gebruikt wordt". Het invoeren van dergelijke concepten maakte het mogelijk om op een hoger niveau te redeneren over het functioneren van (delen van) een programma en over de behandeling van gegevens binnen een programma.
 
Naarmate programma's groter en complexer werden, werd echter ook meer en meer de noodzaak gevoeld om het abstractieniveau niet alleen op papier te verhogen (in het ontwerp), maar om dezelfde abstracties ook door te voeren in de programma's zelf: om het mogelijk te maken binnen een computerprogramma te programmeren met types die rijker en abstracter zijn dan alleen de types die een programmeertaal biedt en om zo het verschil tussen het concept van een datastructuur en zijn uiteindelijke implementatie te verstoppen voor de gebruiker. De programmastructuren die opgesteld werden om deze conceptuele uitbreiding van het [[typetheorie|typesysteem]] van een programmeertaal mogelijk te maken, worden ''abstracte datatypen'' genoemd.