Razlika med deklarativnim in imperativnim programiranjem

Kazalo:

Razlika med deklarativnim in imperativnim programiranjem
Razlika med deklarativnim in imperativnim programiranjem

Video: Razlika med deklarativnim in imperativnim programiranjem

Video: Razlika med deklarativnim in imperativnim programiranjem
Video: Детальный обзор iOS 5.1 2024, Julij
Anonim

Ključna razlika – deklarativno proti imperativnemu programiranju

Deklarativno in imperativno programiranje sta dve pogosti paradigmi programiranja. Ključna razlika med deklarativnim in imperativnim programiranjem je, da se deklarativno programiranje osredotoča na to, kaj mora program doseči, medtem ko se imperativno programiranje osredotoča na to, kako naj program doseže rezultat.

Paradigma programiranja se uporablja za razvrščanje programskega jezika glede na funkcijo. Omogoča tudi sledenje določenemu vzorcu ali slogu za rešitev določene težave.

Kaj je deklarativno programiranje?

Deklarativno programiranje je mogoče razložiti s scenarijem iz resničnega sveta. Predpostavimo, da mora uporabnik preveriti nova e-poštna sporočila. Eden od načinov je omogočanje obvestil v mapi »Prejeto«. Uporabnik mora obvestila omogočiti samo enkrat, vsakič, ko prispe novo elektronsko sporočilo, pa samodejno prejme obvestilo. Deklarativno programiranje je podobno temu. Zagotavlja preprostost. Deklarativno programiranje izraža, kaj je zahtevani rezultat. Pojasnjuje logiko izračuna brez opisa krmilnega toka.

Razlika med deklarativnim in imperativnim programiranjem
Razlika med deklarativnim in imperativnim programiranjem

Slika 01: Paradigme programiranja

Primer deklarativnega programiranja je naslednji. Gre za množenje števil matrike s konstanto in njihovo shranjevanje v novo matriko.

var številk=[1, 2, 3];

var newnumbers=numbers.map(function(number){

vrni številke5;

});

Console.log(novaštevila);

V zgornjem primeru 'map' daje navodila za ponavljanje vsakega elementa v matriki in za priklic funkcije povratnega klica za vsako postavko ter shranjevanje vrnjene vrednosti v novo matriko. To bo dalo rezultat 5, 10, 15. V tem programu je glavni cilj množenja števil s 5 dosežen s funkcijo zemljevida. Pregledal bo 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, kar je treba doseči.

Kaj je nujno programiranje?

Imperativno programiranje je mogoče razložiti z uporabo scenarija iz resničnega sveta kot prej. Za preverjanje novih e-poštnih sporočil se lahko uporabnik prijavi v gmail in nenehno osvežuje stran, da preveri, ali je prejel nova e-poštna sporočila ali ne. To je podobno imperativnemu programiranju. Pojasnjuje vsak korak za doseganje rezultata. Uporablja stavke za izražanje sprememb v stanju programa.

Množenje elementov matrike s konstanto in shranjevanje vrednosti v novo matriko v imperativnem programiranju je naslednje.

var številk=[1, 2, 3];

var newnumbers=;

for(int i=0; i< numbers.length; i++) {

newnumbers.push(numbers5);

}

Console.log(nove številke);

V zgornjem primeru so številke niz. Pri prehodu skozi zanko se vsako število pomnoži s 5 in doda matriki novih števil. Po koncu zanke se bo izpisala vsebina novih števil, ki so 5, 10, 15.

Opazimo lahko, da imperativni slog zagotavlja vse korake za dosego naloge. Izraža, kako ponoviti matriko z uporabo spremenljivke števca 'i', kolikokrat ponoviti, preden gremo iz zanke in kako vstaviti izračunane vrednosti v nove matrike itd.

Ista težava je bila rešena z uporabo deklarativnega in imperativnega programiranja.

Kakšna je razlika med deklarativnim in imperativnim programiranjem?

Deklarativno proti imperativnemu programiranju

Deklarativno programiranje je programska paradigma, ki izraža logiko računanja, ne da bi opisovala njegov nadzorni tok. Imperativno programiranje je paradigma programiranja, ki uporablja stavke, ki spreminjajo stanje programa.
Glavni fokus
Deklarativno programiranje se osredotoča na to, kaj mora program doseči. Imperativno programiranje se osredotoča na to, kako naj program doseže rezultat.
Fleksibilnost
Deklarativno programiranje zagotavlja manj prilagodljivosti. Imperativno programiranje zagotavlja večjo prilagodljivost.
Kompleksnost
Deklarativno programiranje poenostavi program. Imperativno programiranje lahko poveča kompleksnost programa.
Kategorizacija
Funkcionalno, logično, poizvedovalno programiranje spada v deklarativno programiranje. Proceduralno in objektno usmerjeno programiranje spada v imperativno programiranje.

Povzetek – deklarativno proti imperativnemu programiranju

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 mora program doseči, medtem ko se imperativno programiranje osredotoča na to, kako naj program doseže rezultat.

Priporočena: