Postoje i druge razlike koje se mogu objasniti pomoću usporedne tablice.
Tablica usporedbe
Osnova Za usporedbu | POP | OOP |
---|---|---|
Osnovni, temeljni | Usmjerenost postupka / strukture. | Objektno orijentirano. |
Pristup | Top-down. | Odozdo prema gore. |
osnova | Glavni fokus je na "kako izvršiti zadatak", odnosno na proceduri ili strukturi programa. | Glavni fokus je na 'sigurnosti podataka'. Prema tome, samo objekti mogu pristupiti entitetima klase. |
Podjela | Veliki program podijeljen je na jedinice koje se nazivaju funkcije. | Cijeli program je podijeljen na objekte. |
Način pristupa entitetu | Nije primijećen nijedan određivač pristupa. | Specifikatori pristupa su "javni", "privatni", "zaštićeni". |
Preopterećenje / Polimorfizam | Niti preopterećuje funkcije niti operatore. | Preopterećuje funkcije, konstruktore i operatore. |
baština | Njihova odredba nije nasljedstvo. | Nasljeđivanje se postiže na tri načina javno privatno i zaštićeno. |
Skrivanje podataka i sigurnost | Nema prikladnog načina skrivanja podataka, tako da su podaci nesigurni | Podaci su skriveni na tri načina: javni, privatni i zaštićeni. stoga se povećava sigurnost podataka. |
Dijeljenje podataka | Globalni podaci dijele se između funkcija programa. | Podaci se dijele među objektima preko članskih funkcija. |
Funkcije / klase prijatelja | Nema koncepta funkcije prijatelja. | Klase ili funkcije mogu postati prijatelj druge klase s ključnom riječi "prijatelj". Napomena: ključna riječ "friend" koristi se samo u c ++ |
Virtualne klase / funkcija | Nema koncepta virtualnih klasa. | Pojam virtualne funkcije pojavljuje se tijekom nasljeđivanja. |
Primjer | C, VB, FORTRAN, Pascal | C ++, JAVA, VB.NET, C # .NET. |
Definicija objektno-orijentiranog programiranja (OOP)
Glavna briga OOP-a je skrivanje podataka iz ne-članskih funkcija klase, koje tretira kao "kritične informacije". Podaci su usko povezani s članskim funkcijama klase koja na njemu djeluje. Ne dopušta bilo kojoj funkciji koja nije članica izmijeniti podatke unutar njega. Objekti komuniciraju jedni s drugima preko članskih funkcija za pristup svojim podacima.
OPP je razvijen na osnovnom konceptu "objekta", "klase", "enkapsulacije podataka ili apstrakcije", "nasljeđivanja" i "polimorfizma / preopterećenja". U OOP-u, programi se mogu podijeliti na module dijeljenjem podataka i funkcija, što se nadalje može koristiti kao predloške za stvaranje novih kopija modula, ako je potrebno.
Definicija programski orijentiranog programiranja (POP)
POP je konvencionalan način programiranja. Proceduralno programiranje je primarni fokus na postizanju zadatka u sekvencijalnom redoslijedu. Dijagram toka organizira tijek kontrole programa. Ako je program velik, strukturiran je u neke male jedinice koje se nazivaju funkcije, koje dijele globalne podatke. Ovdje se javlja zabrinutost za sigurnost podataka, jer postoji nenamjerna promjena programa po funkcijama.
Ključne razlike između OOP-a i POP-a
- POP je programski orijentirano programiranje, dok je OOP objektno orijentirano programiranje.
- Glavni fokus POP-a je na “kako izvršiti zadatak” slijedi dijagram toka kako bi se zadatak obavio. Glavni fokus OOP-a je na sigurnosti podataka, jer samo objekti klase mogu pristupiti atributima ili funkcijama klase.
- Funkcije su male jedinice velikih programa koji se izvršavaju kako bi dobili glavni zadatak. U OOP-u se atributi i funkcije klase dijele na objekte.
- U POP-u ne postoji poseban način pristupa za pristup atributima ili funkcijama u programu, dok u OOP-u postoje tri načina pristupa "javni", "privatni", "zaštićeni", koji se koriste kao pristupni pristup za pristup atributima ili funkcijama,
- POP ne podržava koncept preopterećenja / polimorfizma. OOP podržava preopterećenje / polimorfizam a znači korištenje istog naziva funkcije za obavljanje različitih funkcija. Možemo preopterećivati funkcije, konstruktore i operatore u OOP-u.
- Ne postoji koncept nasljeđivanja u POP-u dok OOP podržava nasljeđivanje koje omogućuje korištenje atributa i funkcija druge klase nasljeđivanjem.
- POP je manje siguran u usporedbi s OOP-om jer u OOP-u pristupnik specifičnosti ograničava pristup atributima ili funkcijama koje povećavaju sigurnost.
- U POP ako se neki podaci trebaju dijeliti među svim funkcijama programa proglašeni su globalno izvan svih funkcija. U OOP-u se članu klase podataka može pristupiti preko članskih funkcija klase.
- U POP-u ne postoji koncept funkcije prijatelja, dok u OOP-u postoji pojam funkcije prijatelja koji nije član klase, ali zato što je član prijatelj može pristupiti članu podataka i članskim funkcijama klase.
- Ne postoji koncept virtualnih klasa u POP-u, dok u OOP-u virtualne funkcije podržavaju polimorfizam.
Zaključak
Nedostaci POP-a proizlaze iz potrebe OOP-a. OOP ispravlja nedostatke POP-a uvođenjem koncepta "objekt" i "klase". Poboljšava sigurnost podataka i automatsku inicijalizaciju i čišćenje objekata. OOP omogućuje stvaranje više primjeraka objekta bez ikakvih smetnji.