Razlika med deklarativnim in imperativnim programiranjem

Ključna razlika - Izjava vs Imperativ Programiranje
 

Deklarativno in nujno programiranje sta dve skupni programski paradigmi. The ključna razlika med deklarativnim in imperativnim programiranjem je to Deklarativno programiranje se osredotoča na to, kar mora program doseči, 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 upoštevanje določenega vzorca ali sloga za rešitev določene težave.

VSEBINA

1. Pregled in ključne razlike
2. Kaj je deklarativno programiranje
3. Kaj je nujno programiranje
4. Primerjava ob strani - Deklarativno proti imperativnemu programiranju v tabeli
5. Povzetek

Kaj je deklarativno programiranje?

Deklarativno programiranje je mogoče razložiti s scenarijem iz resničnega sveta. Predpostavimo, da mora uporabnik preveriti, ali ima nova sporočila. Eden od načinov je omogočanje prejetih obvestil. Uporabnik mora obvestila omogočiti samo enkrat in vsakič, ko prispe novo e-poštno sporočilo, samodejno prejme obvestilo. Deklarativno programiranje je podobno tistemu. Zagotavlja preprostost. Deklarativno programiranje izraža potreben rezultat. Pojasnjuje logiko izračuna brez opisovanja krmilnega toka.

Slika 01: Programiranje paradigm

Primer deklarativnega programiranja je naslednji. Pomnožiti števila matrike s konstanto in jih shraniti v novo matriko.

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

var newnumbers = numbers.map (funkcija (število)

povratne številke * 5;

);

Console.log (newnumbers);

V zgornjem primeru 'map' da navodila za ponovitev vsakega elementa v matriki in za vsak element prikliče funkcijo povratnega klica in shrani vrnitev v novo matriko. Tako bo rezultat 5,10,15. V tem programu je glavni cilj množenja števil na 5 dosežen s funkcijo preslikave. Skozi vsak element bo uporabil funkcijo povratnega klica za izračun in shranjevanje vrednosti v novi matriki. Za vse korake ni treba navesti. Glavni poudarek je na tem, kar je treba doseči.

Kaj je nujno programiranje?

Imperativno programiranje je mogoče razložiti s scenarijem iz resničnega sveta kot doslej. Za preverjanje novih e-poštnih sporočil se lahko uporabnik prijavi na gmail in obnavlja stran, da preveri, ali je dobil nova sporočila ali ne. To je podobno kot nujno programiranje. Pojasnjuje vsak posamezen korak za dosego rezultata. Uporablja izjave za izražanje sprememb v programskem stanju.

Pomnoževanje elementov matrike s konstanto in shranjevanje vrednosti v nov niz v nujnem programiranju je naslednje.

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

var newnumbers = [];

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

newnumbers.push (številke [i] * 5);

Console.log (newnumbers);

V zgornjem primeru so številke matrika. Ko gre skozi zanko, se vsako število pomnoži s 5 in doda v nižji niz. Po koncu zanke se bo natisnila vsebina številk, ki so 5,10,15.

Opazimo, da imperativni slog zagotavlja vse korake za dosego naloge. Izraža, kako iterati skozi matriko s pomočjo spremenljivke 'i', kolikokrat ponoviti pred izhodom iz zanke in kako vstaviti izračunane vrednosti v nove matrike itd..

Isti problem je bil rešen 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 opisoval njegov tok upravljanja. Imperativno programiranje je programska paradigma, ki uporablja izjave, ki spreminjajo stanje programa.
 Glavni poudarek
Deklarativno programiranje se osredotoča na to, kaj naj program doseže. Imperativno programiranje se osredotoča na to, kako naj program doseže rezultat.
Prilagodljivost
Deklarativno programiranje zagotavlja manjšo prilagodljivost. Imperativno programiranje zagotavlja večjo prožnost.
 Kompleksnost
Deklarativno programiranje poenostavi program. Imperativno programiranje lahko poveča kompleksnost programa.
Kategorizacija
Funkcionalno, logično, poizvedbeno programiranje spada v deklarativno programiranje. Proceduralno in objektno usmerjeno programiranje spada v nujno programiranje.

Povzetek - Deklarativno vs Imperativ Programiranje

Ta članek obravnava razliko med dvema glavnima programskim paradigmam, ki sta deklarativno in nujno 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.

Referenca:

1. „Deklarativno programiranje.“ Wikipedia, fundacija Wikimedia, 3. april 2018. Na voljo tukaj  
2. "Nujno programiranje." Wikipedia, fundacija Wikimedia, 3. april 2018. Na voljo tukaj  
3. predavanje 17 - Imperativno proti deklarativnemu programiranju, Sam Nxstack, 11. april 2017. Na voljo tukaj