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

Ключевые различия - декларативный против Императив программирование
 

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

Парадигма программирования используется для классификации языка программирования в зависимости от функции. Это также позволяет следовать определенному шаблону или стилю для решения конкретной проблемы..

СОДЕРЖАНИЕ

1. Обзор и основные отличия
2. Что такое декларативное программирование
3. Что такое императивное программирование
4. Сравнение бок о бок - декларативное и императивное программирование в табличной форме
5. Резюме

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

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

Рисунок 01: Парадигмы программирования

Пример декларативного программирования заключается в следующем. Это умножить числа массива на константу и сохранить их в новом массиве.

числа var = [1,2,3];

var newnumbers = numbers.map (function (number)

возвращаемые числа * 5;

);

Console.log (newnumbers);

В приведенном выше примере «map» дает инструкции для итерации каждого элемента в массиве и для вызова функции обратного вызова для каждого элемента и для сохранения возвращаемого значения в новом массиве. Это даст выход 5,10,15. В этой программе основная цель умножения чисел на 5 достигается с помощью функции карты. Он будет проходить через каждый элемент и использовать функцию обратного вызова для вычисления и сохранения значений в новом массиве. Не обязательно указывать все шаги. Основное внимание уделяется тому, что должно быть достигнуто.

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

Императивное программирование можно объяснить с помощью сценария реального мира, как и раньше. Чтобы проверить новые электронные письма, пользователь может войти в gmail и постоянно обновлять страницу, чтобы проверить, получил ли он новые электронные письма или нет. Это похоже на императивное программирование. Это объясняет каждый шаг для достижения результата. Он использует операторы для выражения изменений в состоянии программы.

Умножение элементов массивов на константу и сохранение значений в новом массиве в императивном программировании выполняется следующим образом.

числа var = [1,2,3];

var newnumbers = [];

для (int i = 0; i< numbers.length ; i++)

newnumbers.push (номер [I] * 5);

Console.log (newnumbers);

В приведенном выше примере числа является массивом. При прохождении цикла каждое число умножается на 5 и добавляется в массив newnumbers. После окончания цикла содержимое новых номеров будет напечатано 5,10,15.

Можно заметить, что императивный стиль обеспечивает все шаги для достижения цели. В нем рассказывается, как выполнить итерацию по массиву с помощью переменной счетчика 'i', сколько раз выполнить итерацию до выхода из цикла и как вставить вычисленные значения в новые массивы и т. Д..

Та же проблема была решена с помощью декларативного и императивного программирования.

В чем разница между декларативным и императивным программированием?

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

Декларативное программирование - это парадигма программирования, выражающая логику вычислений без описания потока управления.. Императивное программирование - это парадигма программирования, в которой используются операторы, изменяющие состояние программы.
 Основное внимание
Декларативное программирование фокусируется на том, чего должна достичь программа. Императивное программирование фокусируется на том, как программа должна достичь результата.
гибкость
Декларативное программирование обеспечивает меньшую гибкость. Императивное программирование обеспечивает большую гибкость.
 сложность
Декларативное программирование упрощает программу. Императивное программирование может увеличить сложность программы.
Категоризация
Функциональное, логическое, программирование запросов относится к декларативному программированию. Процедурное и объектно-ориентированное программирование попадает в императивное программирование.

Резюме - Декларативный против Императив программирование

В этой статье обсуждается различие между двумя основными парадигмами программирования, которые являются декларативным и императивным программированием. Разница между декларативным и императивным программированием заключается в том, что декларативное программирование фокусируется на том, чего должна достичь программа, в то время как императивное программирование фокусируется на том, как программа должна достичь результата..

Ссылка:

1. «Декларативное программирование». Википедия, Фонд Викимедиа, 3 апреля 2018. Доступно здесь  
2. «Императивное программирование». Википедия, Фонд Викимедиа, 3 апреля 2018. Доступно здесь  
3.Лекция 17 - «Императив против декларативного программирования», Сэм Нксстак, 11 апреля 2017 г. Доступно здесь