
On ka teisi erinevusi, mida saab selgitada võrdluskaardi abil.
Võrdluskaart
Alus Võrdluseks | POP | OOP |
---|---|---|
Põhiline | Menetlus / struktuuripõhine. | Objekti orienteeritud. |
Lähenemisviis | Ülevalt alla. | Põhjani. |
Alus | Põhirõhk on "kuidas teha ülesanne", st programmi protseduurist või struktuurist. | Põhirõhk on andmekaitsel. Sellest tulenevalt lubatakse klassi üksustele juurdepääsu ainult objektidele. |
Osakond | Suur programm jagatakse üksusteks, mida nimetatakse funktsioonideks. | Kogu programm on jagatud objektideks. |
Üksuse juurdepääsu režiim | Juurdepääsu täpsustajat ei täheldatud. | Juurdepääsu spetsifikatsioon on "avalik", "era", "kaitstud". |
Ülekoormus / polümorfism | Ei ülekoormuse funktsioonid ega operaatorid. | See koormab funktsioone, konstruktoreid ja kasutajaid. |
Pärand | Nende olemus ei ole pärand. | Pärand saavutati kolmel erineval viisil avalikult ja kaitstuna. |
Andmete peitmine ja turvalisus | Andmete peitmiseks puudub õige viis, seega on andmed ebakindlad | Andmed on peidetud kolmes režiimis, mis on avalikud, era- ja kaitstud. seega suureneb andmete turvalisus. |
Andmete jagamine | Globaalsed andmed jagatakse programmi funktsioonide vahel. | Andmed jagatakse objektide vahel liikmete funktsioonide kaudu. |
Sõbra funktsioonid / klassid | Sõbra funktsiooni mõiste puudub. | Klassid või funktsioonid võivad saada teise klassi sõbraks märksõnaga "sõber". Märkus: "sõbra" märksõna kasutatakse ainult c ++ |
Virtuaalsed klassid / funktsioon | Virtuaalsete klasside mõiste puudub. | Virtuaalse funktsiooni mõiste ilmub pärimise ajal. |
Näide | C, VB, FORTRAN, Pascal | C ++, JAVA, VB.NET, C # .NET. |
Objektile orienteeritud programmeerimise (OOP) määratlus
OOPi peamine eesmärk on klassi mitteliikmetest tulenevate andmete peitmine, mida ta käsitleb nagu „kriitilist teavet”. Andmed on tihedalt seotud klassi liikmete funktsioonidega. See ei võimalda ühelegi liikmele mittekuuluvat funktsiooni muuta selle sees olevaid andmeid. Objektid suhtlevad üksteisega liikmete funktsioonide kaudu, et pääseda juurde nende andmetele.
OOP on välja töötatud "objekti", "klasside", "andmete kapseldamise või võtmise", "pärandi" ja "polümorfismi / ülekoormuse" põhikontseptsiooni alusel. OOP-s saab programme jagada mooduliteks andmete ja funktsioonide jagamise teel, mida saab edaspidi kasutada mallidena moodulite uute koopiate loomiseks, kui vaja.

Protseduurile orienteeritud programmitöö määratlus (POP)
POP on tavapärane programmeerimise viis. Menetlusplaneerimine on koht, kus põhirõhk on ülesande sooritamisel järjestuses. Vooskeem korraldab programmi kontrollimise voolu. Kui programm on suur, on see struktureeritud mõningatesse väikestesse üksustesse, mida nimetatakse funktsioonideks, mis jagavad globaalseid andmeid. Siin tekib muret andmete turvalisuse pärast, kuna programmide tahtmatu muutus funktsioonide järgi.

Peamised erinevused OOP ja POP vahel
- POP on protseduurile orienteeritud programmeerimine, OOP on objektorienteeritud programmeerimine.
- POP-i põhirõhk on „kuidas teha ülesanne”, mis järgib ülesannete täitmiseks vooskeemi. OOPi põhirõhk on andmekaitsel, sest klassi atribuutidele või funktsioonile on juurdepääs ainult klassi objektidel.
- Funktsioonid on suurte programmide väikesed üksused, mis täidavad peamise ülesande täitmiseks. OOP-is on klassi atribuudid ja funktsioonid jagatud objektide vahel.
- POP-is puudub spetsiifiline juurdepääsurežiim, et pääseda ligi atribuutidele või funktsioonidele programmis, samal ajal kui OOP-is on kolm juurdepääsu režiimi „avalik”, „era-”, „kaitstud”, mida kasutatakse juurdepääsu jagamiseks atribuutide või funktsioonide juurde pääsemiseks .
- POP ei toeta ülekoormuse / polümorfismi kontseptsiooni. OOP toetab ülekoormust / polümorfismi, mis tähendab sama funktsiooni nime kasutamist erinevate funktsioonide täitmiseks. OOP-is saab funktsioone, konstruktorit ja operaatoreid üle koormata.
- POP-s puudub pärandi mõiste, OOP toetab pärandit, mis võimaldab kasutada teise klassi atribuuti ja funktsioone selle pärimise teel.
- POP on vähem ohutu kui OOP, sest OOP-s piirab juurdepääsu spetsifikatsioon juurdepääsu atribuutidele või funktsioonidele, mis suurendavad turvalisust.
- POP-is, kui mõningaid andmeid jagatakse kõigi programmi funktsioonide vahel, deklareeritakse see globaalselt väljaspool kõiki funktsioone. OOP-s saab klassi andmete liikmele juurdepääsu klassi liikmete funktsioonide kaudu.
- POP-s pole sõberfunktsiooni kontseptsiooni, samas kui OOP-s on olemas sõberfunktsiooni mõiste, mis ei ole klassi liige, vaid kuna see on sõberliige, saab ta kasutada klassi andmeliikme ja liikmete funktsioone.
- POP-s pole virtuaalsete klasside kontseptsiooni, samas kui OOP-s toetavad virtuaalsed funktsioonid polümorfismi.
Järeldus
POPi puudused tekitavad OOP-i vajadust. OOP korrigeerib POP-i vigu, kehtestades mõiste „objekt” ja „klassid”. See suurendab andmete turvalisust ja esemete automaatset lähtestamist ja puhastamist. OOP võimaldab luua objekti mitu eksemplari ilma sekkumiseta.