Разлика между декларативното и императивното програмиране

Съдържание:

Разлика между декларативното и императивното програмиране
Разлика между декларативното и императивното програмиране

Видео: Разлика между декларативното и императивното програмиране

Видео: Разлика между декларативното и императивното програмиране
Видео: Психологические концепции В.М. Бехтерева | Идеологическая неприязнь И.П. Павлова 2024, Ноември
Anonim

Ключова разлика – Декларативно срещу императивно програмиране

Декларативното и императивното програмиране са две общи програмни парадигми. Ключовата разлика между декларативното и императивното програмиране е, че декларативното програмиране се фокусира върху това, което програмата трябва да постигне, докато императивното програмиране се фокусира върху това как програмата трябва да постигне резултата.

Програмна парадигма се използва за класифициране на език за програмиране в зависимост от функцията. Той също така позволява да следвате определен модел или стил за решаване на определен проблем.

Какво е декларативно програмиране?

Декларативното програмиране може да бъде обяснено с помощта на сценарий от реалния свят. Да приемем, че потребителят трябва да провери за нови имейли. Един от методите е чрез активиране на известията във входящата кутия. Потребителят трябва да активира известията само веднъж и всеки път, когато пристигне нов имейл, той получава известие автоматично. Декларативното програмиране е подобно на това. Осигурява простота. Декларативното програмиране изразява какъв е необходимият резултат. Той обяснява логиката на изчислението, без да описва контролния поток.

Разлика между декларативното и императивното програмиране
Разлика между декларативното и императивното програмиране

Фигура 01: Парадигми за програмиране

Пример за декларативно програмиране е както следва. Това е да се умножат числа от масив по константа и да се съхранят в нов масив.

променливи числа=[1, 2, 3];

var newnumbers=numbers.map(функция(номер){

връщане на числа5;

});

Console.log(нови числа);

В горния пример ‘map’ дава инструкции за повторение на всеки елемент в масива и за извикване на функцията за обратно извикване за всеки елемент и за съхраняване на върнатата стойност в новия масив. Това ще даде резултат 5, 10, 15. В тази програма основната цел за умножаване на числата по 5 се постига с помощта на функцията карта. Той ще премине през всеки елемент и ще използва функцията за обратно извикване, за да изчисли и съхрани стойностите в новия масив. Не е необходимо да се предоставят всички стъпки. Основният фокус е върху това, което трябва да се постигне.

Какво е императивно програмиране?

Императивното програмиране може да бъде обяснено с помощта на сценарий от реалния свят, както преди. За да провери новите имейли, потребителят може да влезе в gmail и да продължи да опреснява страницата, за да провери дали е получил нови имейли или не. Това е подобно на императивното програмиране. Обяснява всяка стъпка за постигане на резултата. Той използва изрази, за да изрази промените в състоянието на програмата.

Умножаването на елементите на масива с константа и съхраняването на стойностите в нов масив при императивно програмиране е както следва.

променливи числа=[1, 2, 3];

var newnumbers=;

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

нови числа.push(числа5);

}

Console.log(нови числа);

В горния пример числата са масив. При преминаване през цикъла всяко число се умножава по 5 и се добавя към масива newnumbers. След края на цикъла ще се отпечата съдържанието на новите числа, които са 5, 10, 15.

Може да се забележи, че императивният стил осигурява всички стъпки за постигане на задачата. Той изразява как да се повтори през масива с помощта на променливата на брояча „i“, колко пъти да се повтори, преди да излезете от цикъла и как да вмъкнете изчислените стойности в новите масиви и т.н.

Същият проблем беше решен с помощта на декларативно и императивно програмиране.

Каква е разликата между декларативното и императивното програмиране?

Декларативно срещу императивно програмиране

Декларативното програмиране е програмна парадигма, която изразява логиката на изчислението, без да описва неговия контролен поток. Императивното програмиране е програмна парадигма, която използва изрази, които променят състоянието на програмата.
Основен фокус
Декларативното програмиране се фокусира върху това, което програмата трябва да постигне. Императивното програмиране се фокусира върху това как програмата трябва да постигне резултата.
Гъвкавост
Декларативното програмиране осигурява по-малко гъвкавост. Императивното програмиране осигурява повече гъвкавост.
Сложност
Декларативното програмиране опростява програмата. Императивното програмиране може да увеличи сложността на програмата.
Категоризация
Функционалното, логическото, програмирането с заявки попада в декларативното програмиране. Процедурното и обектно ориентираното програмиране попада в императивното програмиране.

Резюме – Декларативно срещу императивно програмиране

Тази статия обсъди разликата между две основни програмни парадигми, които са декларативно и императивно програмиране. Разликата между декларативното и императивното програмиране е, че декларативното програмиране се фокусира върху това, което програмата трябва да постигне, докато императивното програмиране се фокусира върху това как програмата трябва да постигне резултата.

Препоръчано: