Skirtumas tarp struktūrinio programavimo ir objektinio programavimo

Skirtumas tarp struktūrinio programavimo ir objektinio programavimo
Skirtumas tarp struktūrinio programavimo ir objektinio programavimo

Video: Skirtumas tarp struktūrinio programavimo ir objektinio programavimo

Video: Skirtumas tarp struktūrinio programavimo ir objektinio programavimo
Video: Kas yra Investavimas ir kas yra Treidingas, spekuliavimas? Kame skirtumas? | Dividendai | Akcijos 2024, Lapkritis
Anonim

Struktūrinis programavimas prieš objektinį programavimą

Objektinis programavimas (OOP) ir struktūrinis programavimas yra dvi programavimo paradigmos. Programavimo paradigma yra pagrindinis kompiuterio programavimo stilius. Programavimo paradigmos skiriasi tuo, kaip vaizduojamas kiekvienas programos elementas ir kaip apibrėžiami žingsniai sprendžiant problemas. Kaip rodo pavadinimas, OOP daugiausia dėmesio skiria problemų vaizdavimui naudojant realaus pasaulio objektus ir jų elgseną, o struktūrizuotas programavimas skirtas programos tvarkymui pagal loginę struktūrą.

Kas yra struktūrinis programavimas?

Manoma, kad struktūrinio programavimo gimimo metai yra 1970 m. Struktūrinis programavimas laikomas imperatyvaus programavimo pogrupiu. Struktūrinė programa sudaryta iš paprastų programų srauto struktūrų, kurios yra sutvarkytos hierarchiškai. Jie yra seka, pasirinkimas ir kartojimas. Seka yra teiginių tvarka. Pasirinkimas reiškia teiginio pasirinkimą iš teiginių rinkinio pagal esamą programos būseną (pvz., naudojant if sakinius), o kartojimas reiškia sakinio vykdymą, kol pasiekiama tam tikra būsena (pvz., naudojant for arba while sakinius). ALGOL, Pascal, Ada ir PL/I yra kai kurios šiandien naudojamos struktūrinio programavimo kalbos.

Kas yra objektinis programavimas?

OOP pagrindinis dėmesys skiriamas problemos, kurią reikia išspręsti, mąstymui, atsižvelgiant į realaus pasaulio elementus, ir problemos vaizdavimui pagal objektus ir jų elgesį. Klasės vaizduoja abstrakčius realaus pasaulio objektų vaizdus. Klasės yra tarsi brėžiniai ar šablonai, kuriuose surenkami panašūs daiktai ar daiktai, kuriuos galima sugrupuoti. Klasės turi savybių, vadinamų atributais. Atributai įgyvendinami kaip pasauliniai ir egzempliorių kintamieji. Klasių metodai atspindi arba apibrėžia šių klasių elgesį. Klasių metodai ir atributai vadinami klasės nariais. Klasės egzempliorius vadinamas objektu. Todėl objektas yra duomenų struktūra, labai panaši į kokį nors realaus pasaulio objektą.

Yra keletas svarbių OOP sąvokų, tokių kaip duomenų abstrakcija, inkapsuliavimas, polimorfizmas, pranešimų siuntimas, moduliškumas ir paveldėjimas. Paprastai inkapsuliavimas pasiekiamas padarant atributus privačiais, tuo pačiu sukuriant viešuosius metodus, kuriuos galima naudoti norint pasiekti šiuos atributus. Paveldėjimas leidžia vartotojui išplėsti klases (vadinamas subklasėmis) iš kitų klasių (vadinamų super klasėmis). Polimorfizmas leidžia programuotojui pakeisti klasės objektą vietoj jo super klasės objekto. Paprastai problemos apibrėžime rasti daiktavardžiai tiesiogiai tampa programos klasėmis. Ir panašiai veiksmažodžiai tampa metodais. Kai kurios iš populiariausių OOP kalbų yra Java ir C.

Kuo skiriasi struktūrinis programavimas nuo objektinio programavimo?

Pagrindinis skirtumas tarp struktūrinio programavimo ir OOP yra tas, kad struktūrinio programavimo tikslas yra suskirstyti programą į subprogramų hierarchiją, o OOP tikslas yra suskirstyti programavimo užduotį į objektus, kurie apima duomenis ir metodus. OOP laikomas lankstesniu nei struktūrizuotas programavimas, nes OOP atskiria programą į posistemių tinklą, o ne struktūrizuoja programą pagal hierarchiją. Nors struktūrizavimas suteikia tam tikro aiškumo, nedidelis labai didelės struktūrinės programos pakeitimas gali sukelti bangavimo efektą, kai reikės pakeisti kelias paprogrames.

Rekomenduojamas: