МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
КАФЕДРА СИСТЕМ ИНФОРМАТИКИ
ПАРАДИГМА ПРОГРАММИРОВАНИЯ
КУРС ЛЕКЦИЙ
НОВОСИБИРСК
2015
УДК 004. 43 (042. 4)
ББК 32. 973-018
Г
Рецензент
канд. физ. -мат. наук, Ф. А. Мурзин
Издание подготовлено в рамках реализации
Программы развития государственного
образовательного учреждения высшего
профессионального образования «Новосибирский
государственный университет» на 2009–2018 годы. Городняя, Л. В. Г Парадигма программирования : курс лекций / Л. В. Городняя ; Новосиб. гос. ун-т. – Новосибирск : РИЦ
НГУ, 2015. – 206 с. ISBN ___________
Курс лекций посвящен проблеме анализа, сравнения и
определения парадигм программирования. Содержание представляет интерес для специалистов
по программированию и информационным
технологиям. УДК 004. 43 (042. 4)
ББК 32. 973-018
© Новосибирский государственный
университет, 2015
ISBN________ © Л. В. Городняя, 2015
СОДЕРЖАНИЕ
Содержание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Лекция 1. Проявление парадигм программирования . . . . . . . . 12
1. 1. Многоликое программирование . . . . . . . . . . . . . . . . . . . . 12
1. 2. Технологии программирования . . . . . . . . . . . . . . . . . . . . 15
1. 3. Жизненный цикл программ . . . . . . . . . . . . . . . . . . . . . . . 19
1. 4. Развитие парадигм программирования . . . . . . . . . . . . . . 23
1. 5. Эксплуатационная прагматика . . . . .
. . . . . . . . . . . . . . . 25
Лекция 2. Поддержка парадигм программирования . . . . . . . . . 27
2. 1. Семантика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2. 2. Абстрактная машина . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2. 3. Структуры данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2. 4. Реализационная прагматика . . . . . . . . . . . . . . . . . . . . . 49
2. 5. Определитель парадигм . . . . . . . . . . . . . . . . . . . . . . . . 53
Лекция 3. Языки низкого уровня . . . . . . . . . . . . . . . . . . . . . . . . . 58
3. 1. Императивное программирование на ассемблере . . . . 59
3. 2.