Šiame straipsnyje aptariami skirtumai tarp procedūrinio ir objektinio programavimo.
Procedūrinis programavimas
Procedūrinį programavimą galima apibrėžti kaip programavimo modelį, kuris yra išvestas iš struktūrinio programavimo, remiantis iškvietimo procedūros koncepcija. Procedūros, taip pat žinomos kaip įprastos, paprogramės arba funkcijos, tiesiog susideda iš skaičiavimo veiksmų, kuriuos reikia atlikti. Programos vykdymo metu bet kuri nurodyta procedūra gali būti iškviesta bet kuriuo metu, įskaitant kitas procedūras arba pati.
spyruoklinių įrankių rinkinys
Procesiniame programavime naudojamos kalbos:
FORTRAN, ALGOL, COBOL,
BASIC, Pascal ir C.
Objektinis programavimas
Objektinis programavimas gali būti apibrėžtas kaip programavimo modelis, pagrįstas objektų koncepcija. Objektuose yra duomenys atributų pavidalu ir kodas metodų pavidalu. Objektiniame programavime kompiuterinės programos kuriamos naudojant objektų, sąveikaujančių su realiu pasauliu, koncepciją. Objektinės programavimo kalbos yra įvairios, tačiau populiariausios yra pagrįstos klasėmis, tai reiškia, kad objektai yra klasių egzemplioriai, kurie taip pat nustato jų tipus.
Objektiniame programavime naudojamos kalbos:
Java, C++, C#, Python,
PHP, JavaScript, Ruby, Perl,
Objective-C, Dart, Swift, Scala.
stygų atsukimas c
Procedūrinis programavimas prieš objektinį programavimą
Žemiau yra keletas skirtumų tarp procedūrinio ir objektinio programavimo:
| Procedūrinis programavimas | Objektinis programavimas |
|---|---|
| Procesiniame programavime programa suskirstyta į mažas dalis, vadinamas funkcijas . | Objektiniame programavime programa yra padalinta į mažas dalis, vadinamas objektų . |
| Procedūrinis programavimas atliekamas taip: a metodas iš viršaus į apačią . | Objektinis programavimas seka a metodas iš apačios į viršų . |
| Procesiniame programavime nėra prieigos specifikatoriaus. | Objektinis programavimas turi prieigos specifikacijas, tokias kaip privati, vieša, apsaugota ir kt. |
| Pridėti naujų duomenų ir funkcijų nėra lengva. | Lengva pridėti naujų duomenų ir funkcijų. |
| Procedūrinis programavimas neturi tinkamo būdo paslėpti duomenis mažiau saugus . | Objektinis programavimas leidžia paslėpti duomenis saugesnis . |
| Procedūrinio programavimo metu perkrova negalima. | Objektiniame programavime galimas perkrovimas. |
| Procesiniame programavime nėra duomenų slėpimo ir paveldėjimo koncepcijos. | Objektiniame programavime naudojama duomenų slėpimo ir paveldėjimo sąvoka. |
| Procesiniame programavime funkcija yra svarbesnė už duomenis. | Objektiniame programavime duomenys yra svarbesni už funkciją. |
| Procedūrų programavimas yra pagrįstas nerealus pasaulis . | Objektinis programavimas yra pagrįstas realus pasaulis . |
| Vidutinio dydžio programoms kurti naudojamas procedūrinis programavimas. | Objektinis programavimas naudojamas kuriant dideles ir sudėtingas programas. |
| Procedūrų programavimas naudoja procedūrų abstrakcijos sąvoką. | Objektinis programavimas naudoja duomenų abstrakcijos sąvoką. |
| Kodo pakartotinio naudojimo nėra procedūriniame programavime, | Kodo pakartotinis panaudojimas yra objektiniame programavime. |
| Pavyzdžiai: C, FORTRAN, Pascal, Basic ir kt. | Pavyzdžiai: C++, Java, Python, C# ir kt. |