Razlika med OOP in POP

Avtor: Laura McKinney
Datum Ustvarjanja: 2 April 2021
Datum Posodobitve: 13 Maj 2024
Anonim
After watching this, your brain will not be the same | Lara Boyd | TEDxVancouver
Video.: After watching this, your brain will not be the same | Lara Boyd | TEDxVancouver

Vsebina


Programsko usmerjeno programiranje (POP) in Objektno usmerjeno programiranje (OOP) oboje je programski pristop, ki za programiranje uporablja jezik na visoki ravni. Program je lahko napisan v obeh jezikih, če pa je naloga zelo zapletena, OOP deluje dobro v primerjavi s POP. V POP je "varnost podatkov" ogrožena, saj se podatki prosto gibljejo v programu, prav tako pa "ni večkratna uporaba kode", kar ne dosega, zaradi česar je programiranje dolgotrajno in težko razumljivo.

Veliki programi vodijo k več napak, kar pa poveča čas odpravljanja napak. Vse te pomanjkljivosti vodijo do novega pristopa, in sicer do »objektno usmerjenega programiranja«. V objektno usmerjenem programiranju je glavna skrb dana na 'varnost podatkov' podatke tesno veže na funkcije, ki delujejo na njih. Prav tako rešuje problem „ponovno uporabo kode"Kot da je razred ustvarjen, je mogoče ustvariti več primerkov (predmetov), ​​ki ponovno uporabi člane in funkcije članov, ki jih določa razred.


Obstaja nekaj drugih razlik, ki jih je mogoče razložiti s primerjalno tabelo.

    1. Primerjalna tabela
    2. Opredelitev
    3. Ključne razlike
    4. Prednosti
    5. Slabosti
    6. Zaključek


Primerjalna tabela

Osnove za primerjavoPOPOOP
Osnovni
Postopek / usmerjena struktura.
Objektno usmerjen.
Pristop Od zgoraj navzdol.Od spodaj navzgor
OsnoveGlavni poudarek je na "kako opraviti nalogo", tj. Na postopek ali strukturo programa.Glavni poudarek je na varnosti podatkov. Torej, samo predmeti lahko dostopajo do entitet razreda.
DivizijeVeliki program je razdeljen na enote, imenovane funkcije.Celoten program je razdeljen na predmete.
Način dostopa do subjektaNobenega specifikatorja dostopa ni bilo.
Specifični podatki o dostopu so "javni", "zasebni", "zaščiteni".
Preobremenjenost / polimorfizemNiti preobremeni funkcij niti operaterjev.Preobremenjuje funkcije, konstruktorje in operaterje.
DedovanjeNjihova dediščina ni določba.Dedovanje, doseženo v treh načinih, zasebnem in zaščitenem.
Skrivanje podatkov in varnostNi ustreznega načina skrivanja podatkov, zato so podatki negotovi Podatki so skriti v treh načinih, javnem, zasebnem in zaščitenem. s tem se poveča varnost podatkov.
Skupna raba podatkovGlobalni podatki se delijo med funkcijami v programu.Podatki se delijo med predmete prek funkcij članov.
Prijateljeve funkcije / razrediBrez koncepta funkcije prijatelja.Razredi ali funkcije lahko postanejo drug drug razred s ključno besedo "prijatelj".
Opomba: ključna beseda "friend" se uporablja samo v c ++
Navidezni razredi / funkcijaBrez koncepta virtualnih razredov.Koncept navidezne funkcije se pojavi med dedovanjem.
Primer C, VB, FORTRAN, PascalC ++, JAVA, VB.NET, C # .NET.


Opredelitev objektno usmerjenega programiranja (OOP)

Glavna skrb OOP-a je skriti podatke iz nečlanskih funkcij razreda, ki jih obravnavajo kot "kritične informacije". Podatki so tesno povezani s funkcijami članov razreda, ki deluje na njem. Ne dovoljuje nobeni nečlanski funkciji, da spreminja podatke v njej. Objekti medsebojno delujejo prek funkcij članov za dostop do svojih podatkov.

OOP je razvit na osnovnem konceptu "predmeta", "razredov", "kapsulacije ali abstrakcije podatkov", "dedovanja" in "polimorfizma / preobremenitve". V OOP se programi lahko razdelijo na module z razdelitvijo podatkov in funkcij, ki jih lahko po potrebi uporabimo tudi kot predloge za ustvarjanje novih kopij modulov. Zato je pristop, ki pri modularizaciji programov olajša gradnjo particiranega pomnilniškega prostora za podatke in funkcije.

Objektno usmerjeni pojmi

  • Predmeti: Šteje se kot spremenljivka razreda tipa in primerek razreda.
  • Razred: Gre za niz podobnih predmetov. Celoten nabor podatkov in kode predmeta ustvari uporabniško definiran tip podatkov z uporabo razreda.
  • Odvzem podatkov in kapsulacija: Abstrakcija ni nič drugega kot metoda skrivanja podrobnosti o ozadju in predstavljanja bistvenih značilnosti. Zapiranje je metoda pakiranja podatkov in funkcij v eno enoto.
  • Dedovanje: Dedovanje je tehnika pridobivanja lastnosti predmetov iz enega razreda v drugi razred predmetov. Z drugimi besedami, pomaga pri izpeljavi novega razreda iz obstoječega.
  • Polimorfizem: Polimorfizem omogoča način ustvarjanja več oblik funkcije z uporabo enega samega imena funkcije.
  • Dinamična vezava: Določa, da koda, povezana z določenim postopkom, ni znana do trenutka klica v času izvajanja.
  • mimo: Ta koncept OOP omogoča interakcijo med različnimi razredi s prenosom in sprejemanjem informacij.

Opredelitev postopkovno naravnanega programiranja (POP)

POP je običajni način programiranja. Proceduralno programiranje se osredotoča na to, da se naloga opravi v zaporednem zaporedju. Diagram poteka organizira tok nadzora programa. Če je program obsežen, je strukturiran v nekaj majhnih enotah, imenovanih funkcije, ki delijo globalne podatke. Tu se pojavi zaskrbljenost glede varnosti podatkov, saj pride do nenamerne spremembe programa po funkcijah.

Značilnosti POP

  • Med načrtovanjem programa POP sledi programskemu pristopu od zgoraj navzdol.
  • Večina funkcij omogoča skupno rabo globalnih podatkov.
  • Večje programe deli tudi na manjše dele, imenovane funkcije.
  • Omogoča prosto gibanje podatkov po sistemu od funkcij do funkcij.
  • Podatki se funkcije pretvorijo iz ene oblike v drugo.
  • Pomemben je koncept funkcij.
  1. POP je procesno usmerjeno programiranje, OOP pa objektno usmerjeno programiranje.
  2. Glavni poudarek POP je na "kako opraviti nalogo"Sledi diagramu poteka, da opravite nalogo. Glavni poudarek OOP je na njem varnost podatkov kot samo predmeti razreda lahko dostopajo do atributov ali funkcij razreda.
  3. The funkcije so majhne enote velikih programov ali podprogram, ki se izvajajo za izvedbo glavne naloge. V nasprotju s tem so atributi in funkcije razreda OOP razdeljeni med predmeti.
  4. V programu POP ni posebnega načina dostopa do dostopa do atributov ali funkcij v programu. Nasprotno pa v OOP obstajajo trije načini dostopa, "javni", "zasebni", "zaščiteni", ki se uporabljajo kot način dostopa do dostopa do atributov ali funkcij.
  5. POP ne podpira koncepta preobremenjenosti / polimorfizma. Nasprotno, OOP podpira preobremenitev / polimorfizem, kar pomeni uporabo istega imena funkcije za izvajanje različnih funkcij. V OOP lahko preobremenimo funkcije, konstruktor in operaterje.
  6. V POP ni pojma dedovanja, medtem ko OOP podpira dedovanje, ki omogoča uporabo atributa in funkcij drugega razreda tako, da ga podeduje.
  7. POP je manj varen v primerjavi z OOP, ker v OOP dostopni specifikator omeji dostop do atributov ali funkcij, ki povečajo varnost.
  8. V POP-u, če naj se nekateri podatki delijo med vsemi funkcijami v programu, se deklarira po vsem svetu zunaj vseh funkcij. Medtem ko je v OOP-ju dostop do podatkovnega člana razreda prek funkcij članic razreda.
  9. V POP ni pojma funkcija prijatelja. Nasprotno, v OOP obstaja koncept funkcije prijatelja, ki ni član razreda, ker pa je prijatelj, lahko dostopa do podatkovnega člana in funkcije člana razreda.
  10. V POP ni koncepta virtualnih razredov, medtem ko v OOP virtualne funkcije podpirajo polimorfizem.

Prednosti

POP (Programirano programiranje)

  • Omogoča ponovno uporabo iste kode na različnih mestih.
  • Olajša sledenje toku programa.
  • Zmožnost konstrukcije modulov.

OOP (objektno usmerjeno programiranje)

  • Predmeti pomagajo pri razdelitvi nalog v projektu.
  • Varne programe je mogoče zgraditi s skrivanjem podatkov.
  • Predmete lahko potencialno preslika.
  • Omogoča kategorizacijo predmetov v različne razrede.
  • Objektno usmerjene sisteme je mogoče brez težav nadgraditi.
  • Odvečne kode je mogoče odpraviti z dedovanjem.
  • Kode je mogoče razširiti z uporabo ponovne uporabe.
  • Lahko se doseže večja modularnost.
  • Odvzem podatkov povečuje zanesljivost.
  • Fleksibilen zaradi koncepta dinamične vezave.
  • Z uporabo skrivanja informacij loči bistvene specifikacije iz njegovega izvajanja.

Slabosti

POP (Programirano programiranje

  • Globalni podatki so ranljivi.
  • Podatki se lahko prosto gibljejo znotraj programa
  • Težko je preveriti položaj podatkov.
  • Funkcije so usmerjene v delovanje.
  • Funkcije se ne morejo povezati z elementi problema.
  • Težav v resničnem svetu ni mogoče modelirati.
  • Deli kode so soodvisni.
  • Ene kode aplikacije ni mogoče uporabiti v drugi aplikaciji.
  • Podatki se prenašajo s pomočjo funkcij.

OOP (objektno usmerjeno programiranje)

  • Zahteva več sredstev.
  • Dinamično obnašanje predmetov zahteva shranjevanje RAM-a.
  • Zaznavanje in odpravljanje napak je v kompleksnih aplikacijah težje, ko se opravi prehod.
  • Z dedovanjem so njihovi razredi tesno povezani, kar vpliva na ponovno uporabo predmetov.

Zaključek

Pomanjkljivosti POP nastanejo potrebe po OOP. OOP odpravlja pomanjkljivosti POP z uvedbo koncepta "objekt" in "razredi". Povečuje varnost podatkov in samodejno inicializiranje in odstranjevanje predmetov. OOP omogoča ustvarjanje več primerkov predmeta brez kakršnih koli motenj.