Декларативное программирование и императивное — это две разные парадигмы программирования, которые имеют свои особенности. 12
Императивное программирование предполагает, что разработчик в своём коде описывает шаги, которые нужно сделать, чтобы достичь нужного результата. 1 Другими словами, программист создаёт последовательность инструкций для компьютера, пошаговое выполнение которых приведёт к нужному результату. 1 В императивном подходе существует понятие состояния программы — это вся информация, которая в ней хранится в определённый момент (переменные, различные структуры данных и так далее). 1
Декларативное программирование предполагает, что специалист описывает необходимый результат (то есть то, что должно быть сделано). 1 При этом конкретные шаги, которые нужно сделать для достижения этого результата, программист описывать не должен. 1 Также здесь уже не существует понятия состояния программы. 1