Skirtumas tarp struktūrinio programavimo ir objektinio programavimo

Struktūrinis programavimas vs objektinis programavimas

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 programų elementas ir kaip apibrėžiami problemų sprendimo žingsniai. Kaip rodo pavadinimas, OOP daugiausia dėmesio skiria problemų vaizdavimui, naudojant realaus pasaulio objektus ir jų elgesį, o struktūrizuotas programavimas - programos organizavimui loginėje struktūroje..

Kas yra struktūrinis programavimas?

Manoma, kad struktūrinio programavimo gimimo metai yra 1970 metai. Struktūrinis programavimas laikomas imperatyvaus programavimo pogrupiu. Struktūrizuota programa sudaryta iš paprastų programų srautų struktūrų, kurios yra organizuotos hierarchiškai. Jie yra seka, atranka ir pakartojimas. Seka yra teiginių tvarka. Pasirinkimas reiškia teiginio pasirinkimą iš teiginių rinkinio, atsižvelgiant į esamą programos būseną (pvz., Naudojant, jei teiginiai naudojami), o kartojimas - teiginio vykdymą, kol pasiekiama tam tikra būsena (pvz., Naudojant teiginiams arba juos naudojant). ALGOL, Pascal, Ada ir PL / I yra keletas šiandien naudojamų struktūrinių programavimo kalbų.

Kas yra objektyvus programavimas?

OOP metu pagrindinis dėmesys skiriamas problemos, kurią reikia išspręsti realaus pasaulio elementais, apmąstymui ir problemos vaizdavimui objektų ir jų elgesio požiūriu. Klasėse vaizduojamos abstrakčios realaus pasaulio objektų reprezentacijos. Klasės yra tarsi brėžiniai ar šablonai, kuriuose kaupiami panašūs daiktai ar daiktai, kuriuos galima sugrupuoti. Klasės turi savybes, vadinamas atributais. Atributai įgyvendinami kaip visuotiniai ir egzempliorių kintamieji. Klasių metodai parodo arba apibūdina šių klasių elgesį. Užsiėmimų metodai ir požymiai vadinami klasės nariais. Klasės egzempliorius vadinamas objektu. Todėl objektas yra duomenų struktūra, kuri labai primena tam tikrą realaus pasaulio objektą.

Yra keletas svarbių OOP sąvokų, tokių kaip duomenų abstrakcija, kapsuliavimas, polimorfizmas, pranešimų siuntimas, moduliavimas ir paveldimumas. Paprastai inkapsuliacija pasiekiama padarant atributus privačius, o sukuriant viešus metodus, kuriuos galima naudoti tiems atributams pasiekti. Paveldimumas leidžia vartotojui išplėsti klases (vadinamas antrinėmis klasėmis) iš kitų klasių (vadinamų superklasėmis). Polimorfizmas leidžia programuotojui pakeisti klasės objektą vietoje savo superklasės objekto. Paprastai problemos apibrėžime rasti daiktavardžiai programoje tiesiogiai tampa klasėmis. Panašiai veiksmažodžiai tampa metodais. Kai kurios iš populiariausių OOP kalbų yra „Java“ ir C #.

Kuo skiriasi struktūrizuotas programavimas nuo objektinio programavimo?

Pagrindinis skirtumas tarp struktūrizuoto programavimo ir OOP yra tas, kad struktūrizuoto programavimo tikslas yra susisteminti programą į paprogramių hierarchiją, o OOP tikslas yra suskirstyti programavimo užduotį į objektus, kurie apima duomenis ir metodus. Laikoma, kad OOP yra lankstesnis nei struktūrizuotas programavimas, nes OOP atskiria programą prie posistemių tinklo, o ne struktūrizuoja programą pagal hierarchiją. Nors struktūrizavimas suteikia tam tikro aiškumo, nedidelis labai didelės struktūros programos pakeitimas gali sukelti virtimo efektą, nes teks pakeisti keletą paprogramių..