Deklaratiivne ja imperatiivne programmeerimine on kaks levinumat programmeerimisparadigmat. võtme erinevus deklaratiivse ja imperatiivse programmeerimise vahel on see Deklaratiivne programmeerimine keskendub sellele, mida programm peaks saavutama, samas kui kohustuslik programmeerimine keskendub sellele, kuidas programm peaks tulemuse saavutama.
Programmeerimiskeele klassifitseerimiseks vastavalt funktsioonile kasutatakse programmeerimisparadigmat. Samuti võimaldab see konkreetse probleemi lahendamiseks järgida teatud mustrit või stiili.
1. Ülevaade ja peamised erinevused
2. Mis on deklaratiivne programmeerimine
3. Mis on hädavajalik programmeerimine
4. Kõrvuti võrdlus - deklaratiivne vs kohustuslik programmeerimine tabelina
5. Kokkuvõte
Deklaratiivset programmeerimist saab selgitada reaalse maailma stsenaariumi abil. Oletame, et kasutaja peab kontrollima uute e-kirjade olemasolu. Üks meetod on postkasti teatiste lubamine. Kasutaja peab teatised lubama ainult üks kord ja iga kord, kui uus e-kiri saabub, saab ta selle automaatselt. Deklaratiivne programmeerimine sarnaneb sellega. See pakub lihtsust. Deklaratiivne programmeerimine väljendab nõutavat tulemust. See selgitab arvutamise loogikat ilma juhtimisvoogu kirjeldamata.
Joonis 01: Paradigmade programmeerimine
Deklaratiivse programmeerimise näide on järgmine. See on massiivi arvu korrutamine konstandiga ja nende salvestamine uude massiivi.
var numbrid = [1,2,3];
var newnumbers = numerid.map (funktsioon (arv)
tagastusnumbrid * 5;
);
Console.log (newnumbers);
Ülaltoodud näites annab „map” juhised massiivi iga üksuse kordamiseks ja iga elemendi tagasikutsumise funktsiooni käivitamiseks ning tagasiväärtuse salvestamiseks uude massiivi. See annab väljundi 5,10,15. Selles programmis saavutatakse kaardifunktsiooni abil peamine eesmärk korrutada numbrid 5-ga. See läheb läbi iga elemendi ja kasutab tagasihelistamise funktsiooni, et arvutada ja salvestada väärtused uude massiivi. Kõiki toiminguid ei pea esitama. Põhirõhk on sellel, mida tuleks saavutada.
Imperatiivset programmeerimist saab seletada reaalse maailma stsenaariumi abil nagu varem. Uute meilide kontrollimiseks saab kasutaja sisse logida gmaili ja värskendada lehte, et kontrollida, kas ta sai uusi e-kirju või mitte. See sarnaneb hädavajaliku programmeerimisega. See selgitab iga sammu tulemuse saavutamiseks. See kasutab avaldusi programmi oleku muutuste väljendamiseks.
Massiivi elementide korrutamine konstandiga ja väärtuste salvestamine uuele massiivile hädavajaliku programmeerimise korral on järgmine.
var numbrid = [1,2,3];
var newnumbers = [];
jaoks (int i = 0; i< numbers.length ; i++)
newnumbers.push (arvud [i] * 5);
Console.log (newnumbers);
Ülaltoodud näites on numbrid massiiv. Silmusest läbi minnes korrutatakse iga arv 5-ga ja lisatakse uusnumbrite massiivi. Pärast silmuse lõppu trükitakse uusnumbrite sisu, mis on 5,10,15.
Võib täheldada, et imperatiivne stiil annab ülesande saavutamiseks kõik sammud. See väljendab, kuidas itereerida massiivi abil i-loendurimuutuja abil, mitu korda itereerida enne silmusest väljumist ja kuidas sisestada arvutatud väärtused uutesse massiividesse jne..
Sama probleem lahendati deklaratiivse ja imperatiivse programmeerimise abil.
Deklaratiivne vs kohustuslik programmeerimine | |
Deklaratiivne programmeerimine on programmeerimise paradigma, mis väljendab arvutuse loogikat, kirjeldamata selle juhtimisvoogu. | Imperatiivne programmeerimine on programmeerimisparadigma, mis kasutab avaldusi, mis muudavad programmi olekut. |
Põhifookus | |
Deklaratiivne programmeerimine keskendub sellele, mida programm peaks saavutama. | Kohustuslik programmeerimine keskendub sellele, kuidas programm peaks tulemuse saavutama. |
Paindlikkus | |
Deklaratiivne programmeerimine pakub vähem paindlikkust. | Kohustuslik programmeerimine pakub rohkem paindlikkust. |
Keerukus | |
Deklaratiivne programmeerimine lihtsustab programmi. | Kohustuslik programmeerimine võib programmi keerukust suurendada. |
Liigitamine | |
Funktsionaalne, loogiline ja päringuline programmeerimine jaguneb deklaratiivseks programmeerimiseks. | Protseduuriline ja objektorienteeritud programmeerimine on hädavajalik programmeerimine. |
Selles artiklis käsitleti erinevust kahe peamise programmeerimisparadigma vahel, mis on deklaratiivne ja imperatiivne programmeerimine. Deklaratiivse ja imperatiivse programmeerimise erinevus seisneb selles, et deklaratiivne programmeerimine keskendub sellele, mida programm peaks saavutama, samas kui kohustuslik programmeerimine keskendub sellele, kuidas programm peaks tulemuse saavutama.
1. Deklaratiivne programmeerimine. Vikipeedia, Wikimedia Foundation, 3. aprill 2018. Saadaval siin
2. “Kohustuslik programmeerimine”. Vikipeedia, Wikimedia Foundation, 3. aprill 2018. Saadaval siin
3.Loeng 17 - Imperatiivne vs deklaratiivne programmeerimine, Sam Nxstack, 11. aprill 2017. Saadaval siin