Парадигмы программирования - это способ группировки языков программирования по тому, что они делают. Языки могут находиться в нескольких парадигмах.
Некоторые парадигмы смотрят на то, как выполняется код, например, разрешение побочных эффектов или необходимость делать вещи в определенном порядке. Другие парадигмы смотрят на то, как код группируется, например, размещение кода в одной или двух частях (или вместо этого много маленьких частей). Некоторые другие парадигмы смотрят на порядок и части, которые делают программу такой, какая она есть.
Существуют две основные группы парадигм - императивная и декларативная. Язык может быть и тем, и другим одновременно.
Содержание
· 1 Императивное программирование
· 2 Декларативное программирование
· 3 Другие парадигмы
· 4 Обзор
· 5 Проблемы с парадигмами
· 6 История
o 6.1 Машинный код
o 6.2 Языки процедуры
o 6.3 Объектно-ориентированное программирование
o 6.4 Декларативные парадигмы
· 7 Сопутствующие страницы
· 8 Ссылки
· 9 Другие веб-сайты
Императивное программирование
В обязательных программах программисты дают компьютеру набор упорядоченных шагов, которые необходимо выполнить, чтобы что-то сделать. Если бы кто-то хотел, чтобы компьютер нарисовал кошачью морду, он мог бы дать указания типа "Нарисуйте круг здесь, нарисуйте там два круга поменьше, нарисуйте сверху два треугольника" и так далее. Императивные программы иногда имеют много побочных эффектов.
Существуют две основные императивные парадигмы, и большую часть времени язык будет иметь и то, и другое:
- Структурированный - Компьютеру даются указания, которые всегда в определенном порядке. Шаги типа "вернуться к шагу 3" (известные как goto statements) не допускаются.
- Процедура - Программа позволяет программисту дать название списку ордеров, что превращает эти ордера в "процедуру", которую они могут использовать в дальнейшем. Большинство структурированных языков также являются процедурными.
- Объектно-ориентированные - Идеи объясняются компьютеру с помощью объектов, частей кода, которые имеют набор ордеров, которые они могут быть отданы, и некоторой информации о них.
Декларативное программирование
В декларативных парадигмах программист говорит компьютеру, что делать, а не как это делать. Если бы они хотели, чтобы компьютер нарисовал кошачью морду, они могли бы дать указания типа "Нарисуй морду, нарисуй два глаза, два уха и рот".
Наиболее известные декларативные парадигмы:
- Функциональный - Большая часть работы выполняется функциями без побочных эффектов.
- Логика - указывается набор фактов, а затем задается один или несколько "вопросов".
- Event-driven (Управляется событиями) - Куски кода устанавливаются на выполнение, когда происходят определенные события (например, компьютер включается).
Другие парадигмы
Некоторые парадигмы можно найти как в императивных, так и в декларативных языках. Эти парадигмы обычно встречаются с одной из вышеперечисленных парадигм вместо того, чтобы идти своими собственными путями.

