Hovedforskel : Ved procedurprogrammering udføres programmerne med funktioner, og dataene i programmerne er let tilgængelige og ændrede; mens der i objektorienteret programmering består hvert program af enheder, der hedder objekter, som ikke let kan nås og ændres.
En procedure eller funktion er et sæt specifikke instruktioner udført efter hinanden. En række procedurer virker på dataene. Dataene er helt adskilte fra proceduren, og der blev oprettet forskellige programmer for at holde styr på funktionerne og de ændrede data. OOP og POP er to sådanne programmer, og denne artikel skelner mellem de to.
Udtrykket OOP står for 'Objektorienteret programmering'. Det repræsenterer de objekter, der har datafelter. Datafelter er grundlæggende attributter, der beskriver objektet. Procedurerne forbundet med objekterne er kendt som metoder. OOP placerer de data, hvor den ikke er direkte tilgængelig af resten af programmet. Metoder er den eneste måde, hvorpå disse data kan vurderes. Objektene, som normalt er forekomster af klasser, bruges til at interagere med hinanden for at designe applikationer og computerprogrammer. Java er en type objektorienteret programmeringssprog.
Betegnelsen POP står for 'Procesorienteret programmering'. Det stammer fra struktureret programmering. Procedurerne indeholder simpelthen en række beregningsstrin, der skal udføres. Det skaber et trin for trin program, der styrer programmet gennem en række instruktioner. Hver instruktion udføres i rækkefølge. Det er en liste eller et sæt instruktioner, der fortæller en computer, hvad man skal gøre ved hvert trin, og hvordan man udfører fra den første kode til den anden kode. Programmet er opdelt i små dele kaldet funktioner. C og C ++ er to typer proceduremæssige programmeringssprog.
Sammenligning mellem OOP og POP:
OOP | POP | |
Forkortelser | Det står for 'Objektorienteret programmering'. | Det står for 'Procesorienteret programmering'. |
programmer | Hovedprogrammet er opdelt i lille objekt afhængigt af problemet. | Hovedprogrammet er opdelt i små dele afhængigt af funktionerne. |
Sammenkædning | Objekternes funktioner er forbundet med andre objekter ved at bruge meddelelsen, der passerer. | De forskellige dele af programmet er forbundet med hinanden ved at passere parametre og bruge operativsystemet. |
Data | Data og funktioner for hver enkelt objekt virker som en enkelt enhed. | Hver funktion indeholder forskellige data. |
Betydning | Data får større betydning end funktioner i programmet. | Funktioner eller algoritmer får større betydning end data i programmet. |
Datakontrol | Hver objekt styrer sine egne data. | De fleste funktioner bruger globale data. |
Overførsel | Data overfører muligvis ikke fra et objekt til et andet. | Samme data kan overføres fra en funktion til en anden. |
Data gemmer sig | Data skjul er mulig, hvilket forhindrer ulovlig adgang til funktionen udenfor den. | Der er ingen perfekt måde at skjule data på. |
Meddelelse | Et objekt forbinder med det andet ved at sende meddelelsen. | Funktioner kommunikerer med andre funktioner vedligeholdelse som sædvanlige regler. |
Addition | Flere data eller funktioner kan tilføjes med programmet, hvis det er nødvendigt. Til dette formål behøver det fulde program ikke ændres. | Flere data eller funktioner kan ikke tilføjes med programmet, hvis det er nødvendigt. Til dette formål skal hele programmet være forandring. |
Tilladelse | Besked passerer sikrer tilladelse til at få adgang til medlem af et objekt fra et andet objekt. | For at tilføje nye data i programmet skal brugeren sørge for, at funktionen tillader det. |
Behandle | Bottom up proces følges til programdesign. | Top down proces følges til programdesign. |
overbelastning | Overbelastning er mulig i form af overbelastning af funktion og overbelastning af operatøren. | Overbelastning er ikke mulig. |
Adgang | Offentlige, private og beskyttede adgangsspecifikationer anvendes. | Ingen adgangsspecifikationer anvendes. |
eksempler | C ++, Java. | Pascal, Fortran |