- Императивное программирование — это парадигма, основанная на составлении алгоритма действий (инструкций/команд), которые изменяют состояние (информацию/данные/память) программы. Первыми языками программирования, основанными на таком подходе, были машинные коды и ассемблеры.
- Декларативное программирование — это парадигма программирования, в которой задаётся спецификация решения задачи: описывается, что представляет собой проблема и ожидаемый результат, но без описания способа достижения этого результата. При создании HTML мы с помощью тегов описываем, какую хотим получить страничку в браузере, а не то, как нарисовать на экране заголовок статьи, оглавление и текст.
- Структурное программирование — делает текст программы более понятным – алгоритм решения ясновиден из исходного текста. Согласно принципу модульности программа разбивается на отдельные смысловые части (модули). Модуль – это функционально законченная часть программы. Например, модуль вычисления определителя матрицы; модуль нахождения суммы элементов ряда. Каждый модуль программируется отдельно, а затем модули объединяются в единую программу.
- Функциональное программирование — Смысл в том, что мы задаём не последовательность нужных нам команд, а описываем взаимодействие между ними и подпрограммами. В нём весь код — это правила работы с данными. Вы просто задаёте нужные правила, а код сам разбирается, как их применять. Команды можно собирать в подпрограммы, но их последовательность не имеет значения.
- Логическое программирование — парадигма программирования, а также раздел дискретной математики изучающий методы и возможности этой парадигмы, основанная на выводе новых фактов из данных фактов согласно заданным логическим правилам. ´Логическое программирование возникло как упрощение функционального программирования для математиков и лингвистов, решающих задачи символьной обработки.
- Объектно-ориентированное программирование — Суть ООП заключается в том, чтобы представить программу в виде объектов, которые каким-то образом взаимодействуют друг с другом. Объект — это экземпляр какого-то класса. Класс — это шаблон, в котором описаны все свойства будущего объекта и его методы.
- Компонентно-ориентированное программирование —
- Прототипно-ориентированное программирование — стиль объектно-ориентированного программирования, при котором отсутствует понятие класса, а наследование производится путём клонирования существующего экземпляра объекта — прототипа. Каноническим примером прототип-ориентированного языка является язык Self.
Алгоритм — это точное и понятное предписание (указание) исполнителю совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи.
СВОЙСТВА АЛГОРИТМОВ
- Дискретность.
- Понятность (определенность).
- Однозначность (детерминированность).
- Массовость
- Результативность (конечность).
- Правильность.
Виды алгоритмов
- Линейный – все действия выполняются в строгой последовательности(приготовление пирога)
- Разветвляющийся – действия выполняются в зависимости от выполнения или не выполнения условия(переход улицы по светофору)
- Циклический – содержит повторяющиеся действия(колоть дрова)
Условные графические обозначения символов
