Kulcskülönbség - Deklaratív vs kötelező programozás
A deklaratív és az imperatív programozás két közös programozási paradigma. A legfontosabb különbség a deklaratív és az imperatív programozás között az, hogy a deklaratív programozás arra összpontosít, amit a programnak el kell végeznie, míg az imperatív programozás arra összpontosít, hogy a program hogyan érje el az eredményt.
Programozási paradigmát használnak a programozási nyelv osztályozásához a jellemzőtől függően. Ez lehetővé teszi egy bizonyos minta vagy stílus követését is egy adott probléma megoldásához.
TARTALOM
1. Áttekintés és kulcsfontosságú különbségek
2. Mi a deklaratív programozás
3. Mi az imperatív programozás
4. Egymás melletti összehasonlítás - Deklaratív és imperatív programozás táblázatos formában
5. Összefoglalás
Mi az a deklaratív programozás?
A deklaratív programozás valós forgatókönyv segítségével magyarázható. Tegyük fel, hogy a felhasználónak ellenőriznie kell az új e-maileket. Az egyik módszer a beérkező levelek értesítéseinek engedélyezése. A felhasználónak csak egyszer kell engedélyeznie az értesítéseket, és minden egyes új e-mail érkezésekor automatikusan értesítést kap. A deklaratív programozás hasonló ahhoz. Egyszerűséget nyújt. A deklaratív programozás kifejezi a kívánt eredményt. Megmagyarázza a számítás logikáját anélkül, hogy leírná a vezérlési folyamatot.
01. ábra: Programozási paradigmák
A deklaratív programozásra példa a következő. Ez azt jelenti, hogy egy tömb számát megszorozzuk egy konstanssal, és egy új tömbbe tároljuk.
var számok = [1,2,3];
var newnumbers = számok.térkép (függvény (szám) {
visszatérési számok * 5;
});
Console.log (új számok);
A fenti példában a 'map' utasításokat ad a tömb minden elemének iterációjára és az egyes elemek visszahívási funkciójának meghívására, valamint a visszatérési érték tárolására az új tömbben. Ezzel 5,10,15 kimenetet kapunk. Ebben a programban a számok 5-zel való szorzásának fő célkitűzése a térképfunkcióval valósul meg. Minden elemen át fog menni, és a visszahívás funkcióval kiszámítja és tárolja az értékeket az új tömbben. Nem szükséges megadnia az összes lépést. A fő hangsúly arra irányul, hogy mit kell elérni.
Mi az elengedhetetlen programozás?
Az elengedhetetlen programozás valós körülmények között magyarázható, mint korábban. Az új e-mailek ellenőrzéséhez a felhasználó bejelentkezhet a gmailbe, és folyamatosan frissítheti az oldalt, hogy ellenőrizze, új e-maileket kapott-e vagy sem. Ez hasonló az elengedhetetlen programozáshoz. Megmagyarázza az eredmény eléréséhez szükséges minden egyes lépést. Utasításokat használ a programállapot változásainak kifejezésére.
A tömb elemeinek megszorzása konstanssal és az értékek új tömbhöz való tárolása a kötelező programozásban a következő.
var számok = [1,2,3];
var új számok [;
for (int i = 0; i <számok.hossz; i ++) {
newnumbers.push (számok * 5);
}
Console.log (új számok);
A fenti példában a számok tömb. A cikluson való áthaladáskor minden számot megszorozunk 5-tel és hozzáadjuk az új számok tömbhöz. A ciklus befejezése után az új számok tartalma kinyomtatásra kerül, amelyek 5,10,15.
Megfigyelhető, hogy az imperatív stílus minden lépést megad a feladat eléréséhez. Kifejezi, hogyan kell iterálni a tömbön az 'i' számláló változó segítségével, hányszor kell iterálni, mielőtt kilépnénk a ciklusból, és hogyan illesztenénk be a számított értékeket az új tömbökbe stb.
Ugyanezt a problémát deklaratív és imperatív programozással oldották meg.
Mi a különbség a deklaratív és az imperatív programozás között?
Különböző cikk a táblázat előtt
Deklaratív vs kötelező programozás |
|
A deklaratív programozás egy olyan programozási paradigma, amely a számítás logikáját fejezi ki anélkül, hogy leírná annak vezérlési folyamatát. | Az imperatív programozás olyan programozási paradigma, amely olyan utasításokat használ, amelyek megváltoztatják a program állapotát. |
Fő hangsúly | |
A deklaratív programozás arra összpontosít, amit a programnak el kell végeznie. | A kötelező programozás arra összpontosít, hogy a program hogyan érje el az eredményt. |
Rugalmasság | |
A deklaratív programozás kevesebb rugalmasságot biztosít. | A kötelező programozás nagyobb rugalmasságot biztosít. |
Bonyolultság | |
A deklaratív programozás leegyszerűsíti a programot. | A kötelező programozás növelheti a program komplexitását. |
Besorolás | |
A funkcionális, logikai és lekérdezési programozás deklaratív programozásba esik. | Az eljárási és az objektum-orientált programozás imperatív programozásba esik. |
Összegzés - Deklaratív vs kötelező programozás
Ez a cikk két fő programozási paradigma különbségét tárgyalta, amelyek deklaratív és imperatív programozás. A különbség a deklaratív és az imperatív programozás között az, hogy a deklaratív programozás arra összpontosít, amit a programnak el kell végeznie, míg az imperatív programozás arra összpontosít, hogy a program hogyan érje el az eredményt.