Objectgeoriënteerd programmeren versus procedureel programmeren
Object Oriented Programming (OOP) en Procedural Programming zijn twee programmeerparadigma's. Een programmeerparadigma is een fundamentele stijl van computerprogrammering, en ze verschillen in de manier waarop verschillende elementen van het programma worden weergegeven en hoe stappen voor het oplossen van problemen worden gedefinieerd. Zoals de naam doet vermoeden, richt OOP zich op het weergeven van problemen met behulp van objecten uit de echte wereld en hun gedrag, terwijl Procedureel programmeren zich bezighoudt met het voorstellen van oplossingen voor problemen met behulp van procedures, wat verzamelingen code zijn die in een specifieke volgorde worden uitgevoerd. Er zijn programmeertalen die de belangrijkste aspecten van OOP (OOP-talen genoemd), Procedureel (Procedurele talen genoemd) en beide ondersteunen. Maar een belangrijk ding om op te merken is dat OOP en Procedureel twee manieren zijn om problemen weer te geven die moeten worden opgelost, en het maakt niet uit welke taal wordt gebruikt. Met andere woorden,OOP-talen kunnen worden gebruikt voor procedureel programmeren, terwijl procedurele talen soms met enige moeite voor OOP kunnen worden gebruikt.
Procedureel programmeren is een manier van programmeren door de reeks stappen te identificeren om een bepaald probleem op te lossen en de exacte volgorde waarin ze moeten worden uitgevoerd om het gewenste resultaat of de gewenste toestand te bereiken. Als u bijvoorbeeld het eindsaldo aan het einde van de maand voor een bankrekening wilt berekenen, dan zijn de vereiste stappen als volgt. U verwerft eerst het beginsaldo van de rekening en vervolgens vermindert u alle debetbedragen die gedurende de maand zijn opgetreden. Daarna telt u alle kredietbedragen op die gedurende de maand zijn opgetreden. Aan het einde van het proces krijgt u het eindsaldo aan het einde van de maand van de rekening. Een van de belangrijkste concepten van procedureel programmeren is de procedure-oproep. Een procedure die ook wel een subroutine, methode of functie wordt genoemd, bevat een geordende lijst met uit te voeren instructies. Een procedure kan op elk moment tijdens de uitvoering door een andere procedure of op zichzelf worden aangeroepen. Voorbeelden van procedurele programmeertalen zijn C en Pascal.
In OOP ligt de focus op het nadenken over het op te lossen probleem in termen van elementen uit de echte wereld en het weergeven van het probleem in termen van objecten en hun gedrag. Object is een datastructuur die sterk lijkt op een echt object. Objecten bevatten gegevensvelden en methoden die attributen en gedrag van objecten uit de echte wereld vertegenwoordigen. Er zijn verschillende belangrijke OOP-concepten zoals data-abstractie, inkapseling, polymorfisme, berichtenuitwisseling, modulariteit en overerving. Enkele populaire OOP-talen zijn Java en C #. Ze kunnen echter ook worden gebruikt om procedureel programmeren uit te voeren.
Het belangrijkste verschil tussen OOP en procedureel programmeren is dat de focus van procedureel programmeren is om de programmeertaak op te splitsen in een verzameling variabelen en subroutines, terwijl de focus van OOP is om de programmeertaak op te splitsen in objecten, die gegevens inkapselen en methoden. Het meest opvallende verschil zou kunnen zijn dat terwijl procedureel programmeren procedures gebruikt om rechtstreeks op gegevensstructuren te werken, OOP de gegevens en methoden samenbundelt zodat een object op zijn eigen gegevens werkt. Als het gaat om de nomenclatuur, worden procedure, module, procedure-aanroep en variabele in procedureel programmeren vaak respectievelijk methode, object, bericht en attribuut genoemd in OOP.