Objektorienteret programmering vs procedureprogrammering
Objektorienteret programmering (OOP) og procedureprogrammering er to programmeringsparadigmer. Et programmeringsparadigme er en grundlæggende stil med computerprogrammering, og de adskiller sig i den måde, som forskellige elementer i programmet er repræsenteret på, og hvordan trin til løsning af problemer defineres. Som navnet antyder, fokuserer OOP på at repræsentere problemer ved hjælp af objekter i den virkelige verden og deres opførsel, mens Procedureprogrammering beskæftiger sig med at repræsentere løsninger på problemer ved brug af procedurer, som er samlinger af koder, der kører i en bestemt rækkefølge. Der er programmeringssprog, der understøtter centrale aspekter af OOP (kaldet OOP-sprog), Procedurel (kaldet Procedurale sprog) og begge dele. Men en vigtig ting at bemærke er, at OOP og procedure er to måder at repræsentere problemer, der skal løses, og det betyder ikke noget, hvilket sprog der bruges. Med andre ord kan OOP-sprog bruges til procedureprogrammering, mens proceduresprog undertiden kan bruges til OOP med en vis indsats.
Procedureprogrammering er en måde at programmere ved at identificere sæt trin til at løse et bestemt problem og den nøjagtige rækkefølge, de skal udføres for at nå det ønskede resultat eller tilstand. Hvis du f.eks. Vil beregne slutbeløbet på slutningen af måneden for en bankkonto, vil de krævede trin være som følger. Først får du kontoens startbalance, og derefter reducerer du alle debetbeløb, der opstod i løbet af måneden. Derefter tilføjer du alle kreditbeløb, der opstod i løbet af måneden. Ved afslutningen af processen får du kontoen ved slutningen af månedsskiftet. Et af hovedbegreberne i procedureprogrammering er procedurekaldet. En procedure også kendt som en subroutine, en metode eller en funktion indeholder en ordnet liste over instruktioner, der skal udføres. En procedure kan kaldes til enhver tid under udførelsen ved enhver anden procedure eller af sig selv. Eksempler på procedureprogrammeringssprog er C og Pascal.
I OOP er fokus på at tænke på det problem, der skal løses med hensyn til elementer i den virkelige verden, og at repræsentere problemet med hensyn til objekter og deres opførsel. Objekt er en datastruktur, der ligner et objekt i den virkelige verden. Objekter indeholder datafelter og metoder, der repræsenterer egenskaber og opførsel af virkelige objekter. Der er adskillige vigtige OOP-koncepter, såsom dataabstraktion, indkapsling, polymorfisme, meddelelser, modularitet og arv. Nogle populære OOP-sprog er Java og C #. De kan imidlertid også bruges til at udføre procedureprogrammering.
Den vigtigste forskel mellem OOP og procedureprogrammering er, at fokus for procedureprogrammering er at nedbryde programmeringsopgaven til en samling af variabler og underprogrammer, mens OOP's fokus er at nedbryde programmeringsopgaven til objekter, der indkapsler data og metoder. Den mest bemærkelsesværdige forskel kan være, at selvom Procedureprogrammering anvender procedurer til direkte at fungere på datastrukturer, vil OOP bundle dataene og metoderne sammen, så et objekt fungerer på sine egne data. Når det kommer til nomenklaturen, kaldes procedure, modul, procedureopkald og variabel i procedureprogrammering ofte henholdsvis metode, objekt, meddelelse og attribut i OOP.