В основе структурного программирования лежит теорема: алгоритм для решения любой логической задачи можно составить только из базовых алгоритмических структур "следование, ветвление, цикл":
Задачи в ограничениях описываются путем определения множества известных переменных и зависимостей между ними:
Иерархия "общее/частное" показывает, что некоторые абстракции включены в рассматриваемую абстракцию как ее части:
Класс - абстрактный тип данных, позволяющий создать в программе новые объекты данных и ввести связанные с ними операции и функции:
Краеугольным камнем в парадигме функционального программирования является функция:
На этапе постановки задачи определяется среда, в которой будет выполняться программа: требования к аппаратуре, используемая операционная система и другое программное обеспечение:
На этапе проектирования применяется технология восходящего проектирования, основная идея которого - разбиение задачи на подзадачи меньшей сложности, пригодные для рассмотрения по отдельности:
Наследование - отношение между абстракциями, при котором некоторая абстракция включает структурную или функциональную часть одной или нескольких других абстракций:
Объект - тип данных, поэтому он определяется в разделе описания типов:
Особенностью функционального программирования является то, что оно позволяет описывать программу в так называемом декларативном виде:
Отладка - процесс, посредством которого проверяется правильность программы:
Переменными в Прологе являются строки символов, цифр и символа подчеркивания, начинающиеся со строчной буквы или символа подчеркивания:
Предикат определяется именем и количеством аргументов:
Структурное программирование позволяет значительно сократить число вариантов построения программы по одной и той же спецификации:
Функциональное программирование - парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних: