Predtým, ako budeme diskutovať o rozdieloch medzi OOP a POP, pozrime sa najprv na niektoré základné koncepcie procesu programovania. Pri vytváraní riešení pre rôzne typy problémov pomocou programovania existuje veľa rôznych prístupov k procesu programovania. Tieto prístupy sa nazývajú paradigmy programovania. Väčšina programovacích jazykov spadá pod jednu paradigmu, ale môžu existovať jazyky, ktoré majú prvky viacerých paradigiem. Objektovo orientované programovanie (OOP) a procedúrovo orientované programovanie (POP) sú dve takéto programovacie paradigmy. Tieto dve paradigmy sa líšia hlavne kvôli abstrakciám, ktoré vytvárajú pri navrhovaní riešenia. Abstrakcia v prístupe k programovaniu oddeľuje relevantnosť informácií od pohľadu používateľa kľúčový rozdiel medzi POP a OPP je to POP vytvára a používa procedurálne abstrakcie zatiaľ čo OOP sa zameriava na abstrakcie údajov.
Objektovo orientované programovanie (OOP) je založené na dvoch hlavných koncepciách; predmety a triedy. Objekty sú štruktúry, ktoré obsahujú údaje aj postupy na prácu s týmito údajmi. Tieto objekty sa dajú použiť na modelovanie entít skutočného sveta. Objekty majú dve charakteristiky; stav a správanie. Triedy definujú dátové formáty a postupy pre daný typ alebo triedu objektov. Inými slovami, trieda je plánom objektu.
Prístup OOP sa zameriava skôr na údaje než na algoritmus spracovania údajov. Pretože dáta aj funkcie, ktoré spracúvajú tieto údaje, sú zoskupené v objektoch, nie je možné na údajoch vykonať externé funkcie. To znamená, že k údajom o objekte nemožno pristupovať pomocou funkcií iného objektu. Tým je zaistená bezpečnosť údajov programu. Funkcie objektu však môžu mať prístup k funkciám iného objektu, ktoré umožňujú objektom navzájom komunikovať. Toto vyvolanie metód jedného objektu metódami iného objektu sa nazýva odovzdávanie správ.
Programovanie OOP má štyri hlavné vlastnosti; abstrakcia, enkapsulácia, polymorfizmus a dedičnosť. Účel abstrakcie je ukázať používateľovi iba relevantné informácie, aby sa znížila zložitosť problému. zapuzdrenie je lokalizácia informácií v objekte. Proces, v ktorom jedna trieda získa vlastnosti a funkcie inej triedy, sa nazýva dedičstvo. polymorfizmus je vlastnosť funkcie, ktorá má veľa podpisov alebo sa objekt správa rôznymi spôsobmi.
OOP tiež podporuje vysokú modularitu. Pridanie nových funkcií alebo údajov nevyžaduje zmenu celého programu. Môže sa to jednoducho urobiť vytvorením nového objektu, pretože objekty sú nezávislé na deklarovaní a definovaní. OOP tak môže byť efektívny a má vysokú produktivitu.
Vzhľadom na návrh programovania sa OOP riadi prístupom zdola nahor. Niektoré populárne jazyky OOP sú Java, Python, Perl, VB.NET a C++.
Python je populárny jazyk OOP.
Programovanie zamerané na postup (POP) vníma problém ako sled vecí, ktoré treba urobiť, a je založený na koncepte volaní procedúr. Programy sú rozdelené do menších častí nazývaných procedúry - známe tiež ako rutiny, podprogramy, metódy alebo funkcie. Postupy zdôrazňujú algoritmus toho, čo je potrebné urobiť v programe. To znamená, že postup obsahuje rad výpočtových krokov, ktoré sa majú vykonať. Pretože tieto funkcie sú zamerané na činnosť, používanie POP jazykov sa niekedy môže ukázať ako ťažké pri modelovaní problémov v skutočnom svete.
POP sa zameriava viac na písanie zoznamu inštrukcií s cieľom informovať počítač o postupe krok za krokom. Menšia pozornosť sa venuje údajom spojeným s programom. Dáta sa môžu prenášať medzi postupmi a každý postup transformuje údaje z jedného formulára do druhého. Väčšina údajov je globálna a dá sa k nim voľne pristupovať z akejkoľvek funkcie v systéme. A keďže POP nepodporuje účinné techniky na skrytie údajov, program môže byť neistý. Niektoré funkcie môžu mať svoje vlastné lokálne údaje.
V POP môže byť ťažké určiť, ktoré údaje sa používajú pri ktorých funkciách v čase, pretože globálne údaje sa medzi funkciami zväčša zdieľajú. V prípade, že je potrebné zmeniť existujúce údaje, je potrebné zrevidovať aj všetky funkcie, ktoré k týmto údajom pristupovali. Môže to ovplyvniť celý program a chyby a chyby sa môžu zobraziť..
Vzhľadom na návrh programovania používajú jazyky POP prístup zhora nadol. Pretože jazyky POP vytvárajú explicitné odkazy na stav prostredia vykonávania, nazývajú sa aj imperatívne jazyky. Príkladmi takýchto jazykov POP sú COBOL, Pascal, FORTRAN a C Language.
C je populárny jazyk POP.
OOP: Objektovo orientované programovanie je programovacie paradigma, ktoré sa zameriava na dátové abstrakcie.
POP: Programovanie zamerané na postup je paradigma programovania, ktoré sa zameriava na procedurálne abstrakcie.
OOP: V prístupe OOP sa programy delia na časti známe ako objekty.
POP: v POP prístupe sú programy rozdelené do funkcií.
OOP: Hlavným zameraním OOP sú údaje spojené s programom.
POP: POP sa zameriava hlavne na postupy a algoritmy, ktoré manipulujú s údajmi.
OOP: OOP Postupuje zdola nahor.
POP: POP Postupuje zhora nadol.
OOP: V OOP každý objekt riadi údaje v ňom.
POP: V POP používa väčšina funkcií globálne údaje.
OOP: V OOP môžu byť k objektom prístup iba funkcie daného objektu.
POP: V POP sa údaje môžu voľne pohybovať z jednej funkcie do druhej.
OOP: OOP má prístupové špecifikácie, ako sú verejné, súkromné atď.
POP: POP nemá žiadne špecifikátory prístupu.
OOP: Pretože OOP poskytuje skrývanie údajov, údaje spojené s programom sú bezpečné.
POP: POP neposkytuje žiadne metódy skrývania údajov. Údaje sú preto menej bezpečné.
OOP: OOP poskytuje jednoduché a efektívne spôsoby pridávania nových údajov a funkcií bez revízie existujúceho programu.
POP: V prípade POP, ak je potrebné pridať nové údaje alebo funkcie, je potrebné revidovať existujúci program.
OOP: OOP používa C ++, Java, VB.NET, C # .NET atď.
POP: POP používa FORTRAN, Pascal, C, VB, COBOL atď.
S láskavým dovolením: „Python logo and wordmark“ by www.python.org - https://www.python.org/community/logos/.(GPL) prostredníctvom Commons „Logo programovacieho jazyka C“ od Rezonansowy - Tento súbor bol odvodený from: The C Programming Language, prvé vydanie Cover.svg. (Public Domain) prostredníctvom Commons