Yra ir kitų skirtumų, kuriuos galima paaiškinti palyginimo diagramos pagalba.
Palyginimo diagrama
Pagrindas Palyginimui | POP | OOP |
---|---|---|
Pagrindinis | Procedūra / struktūra. | Objektinis. |
metodas | Iš viršaus į apačią. | Iki dugno. |
Bazė | Pagrindinis dėmesys skiriamas „kaip atlikti užduotį“, ty apie programos tvarką ar struktūrą. | Pagrindinis dėmesys skiriamas „duomenų saugumui“. Taigi, tik objektais leidžiama patekti į klasės vienetus. |
Skyrius | Didelė programa skirstoma į vienetus, vadinamus funkcijomis. | Visa programa yra suskirstyta į objektus. |
Subjekto prieigos režimas | Nepastebėta jokios prieigos specifikacijos. | Prieigos specifikatorius yra „viešas“, „privatus“, „apsaugotas“. |
Perkrovimas / polimorfizmas | Nei perkrovos funkcijos, nei operatoriai. | Ji perkrauna funkcijas, konstruktorius ir operatorius. |
Paveldėjimas | Jų nėra paveldėjimo nuostata. | Paveldėjimas pasiekiamas trimis viešaisiais ir saugomais režimais. |
Duomenų slepimas ir saugumas | Nėra tinkamo duomenų paslėpimo būdo, todėl duomenys yra nesaugūs | Duomenys yra paslėpti trimis režimais: viešais, privačiais ir saugomais. todėl didėja duomenų saugumas. |
Duomenų bendrinimas | Pasauliniai duomenys dalijami tarp programos funkcijų. | Duomenys dalijami tarp objektų per nario funkcijas. |
Draugų funkcijos / klasės | Nėra draugo funkcijos sąvokos. | Klasės ar funkcija gali tapti kitos klasės draugu, turinčiu raktinį žodį „draugas“. Pastaba: „draugo“ raktinis žodis naudojamas tik c + + |
Virtualios klasės / funkcija | Nėra virtualių klasių sampratos. | Virtualios funkcijos samprata atsiranda per paveldėjimą. |
Pavyzdys | C, VB, FORTRAN, Pascal | C ++, JAVA, VB.NET, C # .NET. |
Objektinio programavimo apibrėžimas (OOP)
Pagrindinis OOP rūpestis yra paslėpti duomenis iš klasės, kuri nėra nario, funkcijas, kurias ji traktuoja kaip „kritinę informaciją“. Duomenys yra glaudžiai susiję su tos klasės nario funkcijomis, kurios veikia. Ji neleidžia jokiai narystės funkcijai keisti jo viduje esančių duomenų. Objektai bendrauja tarpusavyje per nario funkcijas, kad galėtų pasiekti jų duomenis.
OOP sukurtas remiantis pagrindine „objekto“, „klasių“, „duomenų kapsuliavimo ar abstrakcijos“, „paveldėjimo“ ir „polimorfizmo / perkrovos“ koncepcija. OOP programose galima suskirstyti į modulius skaidant duomenis ir funkcijas, kurios toliau gali būti naudojamos kaip šablonai kuriant naujas modulių kopijas, jei reikia.
Procedūrų programavimo apibrėžimas (POP)
POP yra įprastas programavimo būdas. Procedūrinis programavimas yra tas, kur pagrindinis dėmesys skiriamas užduoties atlikimui nuoseklioje tvarka. Struktūrinė schema organizuoja programos kontrolės srautą. Jei programa yra didelė, ji suskirstyta į kai kuriuos mažus vienetus, vadinamus funkcijomis, kurios dalijasi visuotiniais duomenimis. Čia kyla susirūpinimas dėl duomenų saugumo, nes programa netyčia keičiasi pagal funkcijas.
Pagrindiniai skirtumai tarp OOP ir POP
- POP yra į procesą orientuotas programavimas, o OOP yra į objektą orientuotas programavimas.
- Pagrindinis POP dėmesys skiriamas „kaip atlikti užduotį“, o tai seka srauto schemą, kad gautų užduotį. OOP pagrindinis dėmesys skiriamas duomenų saugumui, nes tik klasės objektai gali pasiekti klasės požymius ar funkcijas.
- Funkcijos yra nedideli didžiųjų programų vienetai, kurie atlieka pagrindinę užduotį. OOP klasėje atributai ir funkcijos skirstomi į objektus.
- POP nėra prieigos režimo prieigos prie atributų ar funkcijų programoje, o OOP yra trys prieigos režimai „vieši“, „privatūs“, „apsaugoti“, kurie naudojami kaip prieigos dalis prieigai prie atributų ar funkcijų .
- POP nepalaiko perkrovos / polimorfizmo sampratos. OOP palaiko perkrovimą / polimorfizmą, o tai reiškia, kad naudojant tą pačią funkciją reikia atlikti skirtingas funkcijas. OOP gali perkrauti funkcijas, konstruktorių ir operatorius.
- Nėra jokių paveldėjimo sąvokų POP, o OOP palaiko paveldėjimą, kuris leidžia panaudoti kitos klasės atributus ir funkcijas.
- POP yra mažiau saugus, palyginti su OOP, nes OOP prieigos specifikatorius apriboja prieigą prie atributų ar funkcijų, kurios padidina saugumą.
- POP, jei tam tikri duomenys turi būti bendrinami tarp visų programos funkcijų, ji skelbiama visame pasaulyje už visų funkcijų. OOP duomenų klasės narys gali būti pasiekiamas per klasės nario funkcijas.
- POP nėra draugo funkcijos sampratos, o OOP yra draugo funkcijos sąvoka, kuri nėra klasės narė, bet todėl, kad ji yra draugo narė, gali pasiekti klasės duomenų narį ir nario funkcijas.
- POP nėra virtualių klasių sampratos, o OOP virtualios funkcijos palaiko polimorfizmą.
Išvada
POP trūkumai atsiranda dėl OOP poreikio. OOP pataiso POP trūkumus, įvesdamas sąvoką „objektas“ ir „klasės“. Jis pagerina duomenų saugumą ir automatinį objektų inicijavimą ir išvalymą. OOP leidžia sukurti kelis objekto atvejus be jokių trukdžių.