Ključna razlika - deklarativno in imperativno programiranje
Deklarativno in imperativno programiranje sta dve pogosti programski paradigmi. Ključna razlika med deklarativnim in imperativnim programiranjem je v tem, da se deklarativno programiranje osredotoča na to, kaj naj program doseže, medtem ko se imperativno programiranje osredotoča na to, kako naj program doseže rezultat.
Programska paradigma se uporablja za razvrščanje programskega jezika glede na funkcijo. Omogoča tudi sledenje določenemu vzorcu ali slogu za reševanje določene težave.
VSEBINA
1. Pregled in ključna razlika
2. Kaj je deklarativno programiranje
3. Kaj je imperativno programiranje
4. Vzporedna primerjava - Deklarativno in imperativno programiranje v tabelarni obliki
5. Povzetek
Kaj je deklarativno programiranje?
Deklarativno programiranje je mogoče razložiti z uporabo resničnega scenarija. Predpostavimo, da mora uporabnik preveriti, ali obstajajo nova e-poštna sporočila. Ena metoda je omogočanje obvestil v mapi »Prejeto«. Uporabnik mora omogočiti obvestila samo enkrat in vsakič, ko prispe novo e-poštno sporočilo, samodejno prejme obvestilo. Deklarativno programiranje je podobno temu. Zagotavlja preprostost. Deklarativno programiranje izraža, kakšen je potreben rezultat. Pojasnjuje logiko izračuna brez opisovanja krmilnega toka.
Slika 01: Paradigme programiranja
Primer deklarativnega programiranja je naslednji. Števila matrike je treba pomnožiti s konstanto in jih shraniti v novo matriko.
var številke = [1,2,3];
var newnumbers = numbers.map (funkcija (število) {
povratne številke * 5;
});
Console.log (novoštevilke);
V zgornjem primeru "map" vsebuje navodila za ponovitev vsakega elementa v matriki in za sprožitev funkcije povratnega klica za vsak element ter shranjevanje vrnjene vrednosti v novo matriko. Tako bomo dobili 5,10,15. V tem programu je glavni cilj množenja števil s 5 dosežen s funkcijo zemljevida. Šel bo skozi vsak element in uporabil funkcijo povratnega klica za izračun in shranjevanje vrednosti v novo matriko. Ni treba zagotoviti vseh korakov. Glavni poudarek je na tem, kaj je treba doseči.
Kaj je obvezno programiranje?
Nujno programiranje je mogoče razložiti z resničnim scenarijem kot prej. Če želite preveriti novo e-pošto, se lahko uporabnik prijavi v gmail in osvežuje stran, da preveri, ali je dobil novo e-pošto ali ne. To je podobno nujnemu programiranju. Pojasnjuje vse korake za dosego rezultata. Uporablja izjave za izražanje sprememb stanja programa.
Množenje elementov nizov s konstanto in shranjevanje vrednosti v novo matriko v nujnem programiranju je naslednje.
var številke = [1,2,3];
var številke =;
for (int i = 0; i <numbers.length; i ++) {
newnumbers.push (številke * 5);
}
Console.log (novoštevilke);
V zgornjem primeru je številka matrika. Ko gre skozi zanko, se vsako število pomnoži s 5 in doda v niz neomejenih števil. Po koncu zanke se izpiše vsebina neštevilk, ki so 5,10,15.
Opaziti je, da imperativni slog ponuja vse korake za dosego naloge. Izraža, kako iti skozi matriko s števcem spremenljivke 'i', kolikokrat itirati, preden izstopi iz zanke in kako vstaviti izračunane vrednosti v nova polja itd.
Isti problem smo rešili z uporabo deklarativnega in imperativnega programiranja.
Kakšna je razlika med deklarativnim in imperativnim programiranjem?
Diff Article Sredina pred mizo
Deklarativno vs imperativno programiranje |
|
Deklarativno programiranje je programska paradigma, ki izraža logiko izračuna brez opisovanja krmilnega toka. | Imperativno programiranje je programska paradigma, ki uporablja stavke, ki spreminjajo stanje programa. |
Glavni poudarek | |
Deklarativno programiranje se osredotoča na to, kaj naj program doseže. | Nujno programiranje se osredotoča na to, kako naj program doseže rezultat. |
Prilagodljivost | |
Deklarativno programiranje zagotavlja manj prilagodljivosti. | Nujno programiranje zagotavlja večjo prilagodljivost. |
Kompleksnost | |
Deklarativno programiranje poenostavlja program. | Nujno programiranje lahko poveča kompleksnost programa. |
Kategorizacija | |
Funkcionalno, logično, poizvedbeno programiranje spada v deklarativno programiranje. | Procesno in objektno usmerjeno programiranje spada v nujno programiranje. |
Povzetek - Deklarativno vs imperativno programiranje
Ta članek je obravnaval razliko med dvema glavnima programskima paradigmama, ki sta deklarativno in imperativno programiranje. Razlika med deklarativnim in imperativnim programiranjem je v tem, da se deklarativno programiranje osredotoča na to, kaj naj program doseže, medtem ko se imperativno programiranje osredotoča na to, kako naj program doseže rezultat.