Оглавление:
- Ключевое различие - функциональное программирование против императивного программирования
- Что такое функциональное программирование?
- Что такое императивное программирование?
- В чем сходство между функциональным программированием и императивным программированием?
- В чем разница между функциональным программированием и императивным программированием?
- Резюме - Функциональное программирование против императивного программирования
Видео: Разница между функциональным программированием и императивным программированием
2024 Автор: Mildred Bawerman | [email protected]. Последнее изменение: 2023-12-16 08:42
Ключевое различие - функциональное программирование против императивного программирования
Ключевое различие между функциональным программированием и императивным программированием состоит в том, что функциональное программирование рассматривает вычисления как математические функции и избегает изменения состояния и изменяемых данных, в то время как в императивном программировании используются операторы, которые изменяют состояние программы.
Парадигма программирования обеспечивает стиль построения структуры и элементов компьютерной программы. Парадигмы программирования помогают классифицировать языки программирования на основе их характеристик. Язык программирования может влиять на большее количество парадигм. В объектно-ориентированной парадигме программа структурирована с использованием объектов, а объекты передают сообщения с помощью методов. Логическое программирование может выражать вычисления исключительно в терминах математической логики. Еще две парадигмы программирования - это функциональное программирование и императивное программирование. Функциональное программирование позволяет выражать вычисления как оценку математических функций. Императивное программирование предоставляет операторы, которые явно изменяют состояние памяти. В этой статье обсуждается разница между функциональным программированием и императивным программированием.
СОДЕРЖАНИЕ
1. Обзор и основные отличия
2. Что такое функциональное программирование
3. Что такое императивное программирование
4. Сходства между функциональным программированием и императивным программированием
5. Параллельное сравнение - функциональное программирование и императивное программирование в табличной форме
6. Резюме
Что такое функциональное программирование?
Функциональное программирование основано на математике. Ключевой принцип функционального программирования заключается в том, что все вычисления рассматриваются как комбинация отдельных математических функций. Математическая функция сопоставляет входы с выходами. Предположим, что существует функция с именем f (x) = x * x. Значение x 1 отображается на выходе 1. Значение x 2 отображается на выходе 4. Значение x 3 отображается на выходе 9 и так далее.
Рисунок 01: Пример функционального языка программирования - Haskell
В функциональном программировании рассматриваются шаблоны. Функциональные языки программирования Haskell используют приведенный ниже метод для суммирования чисел.
Функция суммы имеет целочисленные значения, и результат также будет целым числом. Его можно записать как сумму: [int] -> int. Суммирование можно выполнить, следуя приведенным ниже схемам.
sum [n] = n, сумма одного числа и есть само число.
Если есть список номеров, его можно записать следующим образом. N представляет первое число, а ns представляет другие числа.
сумма (п, нс) = п + сумма нс.
Вышеупомянутые шаблоны можно применить, чтобы найти сумму трех чисел, которые равны 3,4,5.
3 + сумма [4,5]
3 + (4 + сумма [5])
3+ 4 + 5 = 12
Говорят, что функция или выражение имеют побочные эффекты, если они изменяют какое-то состояние за пределами своей области действия или имеют наблюдаемое взаимодействие с вызывающими функциями помимо возвращаемого значения. Функциональное программирование сводит к минимуму эти побочные эффекты. Изменения состояния не зависят от входов функции. Это полезно для понимания поведения программы. Одним из недостатков функционального программирования является то, что изучение функционального программирования сложнее по сравнению с императивным программированием.
Что такое императивное программирование?
Императивное программирование - это парадигма программирования, в которой используются операторы, изменяющие состояние программы. Он фокусируется на описании того, как работает программа. Такие языки программирования, как Java, C и C #, являются обязательными языками программирования. Он предоставляет пошаговую процедуру о том, что делать. Императивные языки программирования содержат такие структуры, как if, else, while, для циклов, классов, объектов и функций.
Рисунок 02: Пример императивного языка программирования - Java
Суммирование десяти чисел можно найти в Java следующим образом. На каждой итерации значение i добавляется к сумме и присваивается переменной суммы. На каждой итерации значение суммы продолжает добавляться к ранее вычисленной сумме.
int sum = 0;
for (int i = 0; i <= 10; i ++) {
сумма = сумма + я;
}
Императивное программирование легко изучить, понять и отладить. Состояние программы легко найти благодаря использованию переменных состояния. Некоторые недостатки заключаются в том, что это может сделать код длинным, а также может минимизировать масштабируемость.
В чем сходство между функциональным программированием и императивным программированием?
И функциональное программирование, и императивное программирование являются парадигмами программирования
В чем разница между функциональным программированием и императивным программированием?
Различать статью в середине перед таблицей
Функциональное и императивное программирование |
|
Функциональное программирование - это парадигма программирования, которая рассматривает вычисления как оценку математических функций и избегает изменения состояния и изменяемых данных. | Императивное программирование - это парадигма программирования, в которой используются операторы, изменяющие состояние программы. |
Структуры | |
Функциональное программирование содержит вызовы функций и функции высшего порядка. | Императивное программирование содержит if, else, while, для циклов, функций, классов и объектов. |
Языки программирования | |
Scala, Haskell и Lisp - это функциональные языки программирования. | C, C ++, Java - императивные языки программирования. |
Фокус | |
Функциональное программирование ориентировано на конечный результат. | Императивное программирование фокусируется на описании того, как работает программа. |
Простота | |
Функциональное программирование сложно. | Императивное программирование проще. |
Резюме - Функциональное программирование против императивного программирования
Парадигма программирования обеспечивает стиль построения структуры и элементов компьютерной программы. Функциональное программирование и императивное программирование - два из них. Разница между функциональным программированием и императивным программированием состоит в том, что функциональное программирование рассматривает вычисления как математические функции и избегает изменения состояния и изменяемых данных, в то время как в императивном программировании используются операторы, которые изменяют состояние программы.
Рекомендуем:
Разница между программированием на Anaconda и Python
Ключевое различие между программированием Anaconda и Python заключается в том, что Anaconda - это дистрибутив языков программирования Python и R для науки о данных и
Разница между экстремальным программированием и SCRUM
Экстремальное программирование против SCRUM | XP против SCRUM За последние годы в индустрии программного обеспечения использовалось множество различных методологий разработки программного обеспечения
Разница между объектно-ориентированным программированием и процедурным программированием
Объектно-ориентированное программирование и процедурное программирование Объектно-ориентированное программирование (ООП) и процедурное программирование - это две парадигмы программирования. Программа
Разница между декларативным и императивным программированием
Ключевое различие - декларативное и императивное программирование. Декларативное и императивное программирование - это две распространенные парадигмы программирования. Ключевым отличием будет
Разница между управлением проектами и функциональным управлением
Ключевое различие - управление проектами и функциональное управление. Ключевое различие между управлением проектами и функциональным управлением состоит в том, что управление проектом