Programmeerparadigma

In de informatica zijn programmeerparadigma's denkpatronen of uitgesproken concepten van programmeren, die voornamelijk verschillen in de wijze van aanpak om het gewenste resultaat te kunnen behalen.

Sommige programmeertalen zijn ontworpen om slechts één bepaalde paradigma te ondersteunen, maar er zijn ook andere programmeertalen die meerdere paradigma's ondersteunen (zoals C++, Java en Scala). Programma's die bijvoorbeeld geschreven zijn in C++ kunnen in het geheel procedureel zijn, geheel objectgeoriënteerd zijn of elementen van beide paradigma's bevatten.

Gangbare paradigma's

De belangrijkste programmeerparadigma's zijn:[1][2][3]

  • Imperatief programmeren
  • Functioneel programmeren
  • Logisch programmeren
  • Objectgeoriënteerd programmeren

In imperatief programmeren is een programma in essentie een reeks instructies die het geheugen manipuleren en die op volgorde door de computer worden uitgevoerd. Deze stijl van programmeren staat dicht bij de werking van een computer en werden derhalve als eerste praktisch gerealiseerd.

Functionele talen zijn gebaseerd op formalismen zoals de theorie van recursieve functies of de lambdacalculus-programma's. Hieronder worden wiskundige functies gedefinieerd die invoer naar uitvoer transformeren.

Bij logisch programmeren, gebaseerd op (doorgaans) predicatenlogica, zijn het definities van predicaten die een bepaalde relatie tussen objecten in het geheugen uitdrukken.

Objectgeoriënteerd programmeren (object oriented programming) verenigt berekening en de gegevens: deze worden verpakt in objecten, waarbij de details worden verborgen achter een algemene interface, vaak gerangschikt in een hiërarchie van klassen. Objecten sturen elkaar berichten (Smalltalk) of roepen elkaars methoden aan (C++, Java); alleen zo hebben ze toegang tot elkaars gegevens. De methoden/reacties op berichten zijn procedures die de interne gegevens van een object manipuleren.

Bronnen, noten en/of referenties
  1. E. Bolshakova, "Programming Paradigms in Computer Science Education" International Journal "Information Theories & Applications" vol. 12, p. 285-290, 2005.
  2. Nørmark, Kurt. Overview of the four main programming paradigms. Aalborg University, 9 May 2011. Retrieved 22 September 2012.
  3. M. Vujosevic-Janicic and D. Tosic, "The Role of Programming Paradigms in the First Programming Courses" The Teaching of Mathematics vol. XI, p. 63, 2008.