Технологии программирования

Учебное пособие

Программирование это процесс создания программ для ЭВМ. На заре компьютерной эры программирование воспринималось как искусство. Однако, по мере развития систем программирования этот процесс становится все более изученным. Появляются термины методология программирования, технология программирования, наука программирования инженерия программного обеспечения. Однако, в споре о том, что программирование это искусство или наука нет окончательного решения. Основным, определяющим элементом современных систем программирования является методология. Методология, как философская категория, это система принципов и основ организации и построения творческой и практической деятельности. Таким образом, методология программирования есть система принципов, основ организации и построения программного обеспечения. В настоящее время уже разработано достаточно большое количество методологий.

Кафедра промышленной электроники

Библиографическая запись:

Кручинин, В. В. Технологии программирования: Учебное пособие [Электронный ресурс] / В. В. Кручинин. — Томск: ТУСУР, 2013. — 271 с. — Режим доступа: https://edu.tusur.ru/publications/2834
Автор:   Кручинин В. В.
Год издания: 2013
Количество страниц: 271
Скачиваний: 49

Оглавление (содержание)

Глава 1. Технологии программирования

1.1 Основные термины и определения

1.2 Жизненный цикл программы

1.3 Подходы к проектированию программ

1.4 Модели компьютерных учебных программ

1.4.1 Кадровые компьютерные учебные программы

1.4.2 Модель интеллектуальной компьютерной учебной программы обучения решения задач

1.4.3 Модель интеллектуальной системы контроля знаний

Глава 2. Процедурно-ориентированное программирование

2.1 Для чего нужен язык программирования

2.2 Способы описания языка

2.3 Описание лексических элементов

2.3.1 Понятие лексемы

2.3.2 Пространство между лексемами

2.3.3 Запись длинных строк

2.3.4 Комментарии

2.4 Лексемы

2.4.1 Ключевые слова

2.4.2 Идентификаторы

2.4.3 Константы

2.4.3.1 Десятичные константы

2.4.3.2 Восьмеричные константы

2.4.3.3 Шестнадцатеричные константы

2.4.3.4 Суффиксы для без знаковых и длинных целых чисел

2.4.3.5 Символьные константы

2.4.3.6 Использование обратной косой черты (\)

2.4.3.7 Константы с плавающей запятой

2.4.3.8 Типы данных констант с плавающей запятой

2.4.4 Перечисляемые константы (enum)

2.5 Синтаксические структуры С

2.5.1 Объявления

2.5.2 Объект

2.5.3 Левое значение (Lvalue)

2.5.4 Правое значение (Rvalue)

2.5.5 Тип и класс памяти

2.5.6 Область действия

2.5.7 Блочная область действия

2.5.8 Область действия — вся функция

2.5.9 Область действия прототип функции

2.5.10 Область действия — файл

2.5.11 Пространство имен

2.5.12 Видимость

2.5.13 Время существования

2.5.14 Статические объекты

2.5.15 Локальные объекты

2.5.16 Динамические объекты

2.6 Объявления

2.6.1 Типы объявлений

2.6.2 Объявление переменных

2.6.3 Объявление массивов

2.6.4 Объявление строк символов

2.6.5 Объявление структур

2.6.6 Объявления объединений

2.6.7 Объявление собственного типа (typedef)

2.6.8 Битовые поля

2.7 Функции

2.8 Основные операции в Си

2.8.1 Унарные операции

2.8.2 Бинарные операции

2.8.3 Побитовые операции

2.8.4 Операции сдвига

2.9 Выражения

2.10 Операторы

2.10.1 Составной оператор

2.10.2 Условный оператор

2.10.3 Оператор while

2.10.4 Оператор for

2.10.5 Оператор do while

2.10.6 Оператор continue

2.10.7 Оператор break

2.10.8 Оператор switch

2.10.9 Оператор return

2.10.10 Метки и оператор goto

2.11 Указатели

2.11.1 Что такое указатель

2.11.2 Указатели на массивы

2.11.3 Указатели и динамическое распределение памяти

2.11.4 Указатели на структуры

2.11.5 Указатели на функции

2.11.6 Указатели и константы

2.12 Программы и подпрограммы

2.12.1 Функции в Си

2.13 Препроцессор

2.13.1 Директива #include

2.13.2 Директива #define

2.13.2 Условная компиляция

2.3 Механизм реализации языков программирования

2.3.1 Передача параметров

2.3.2 Механизм выделения локальной памяти под переменные

2.3.3 Использование ассемблерных вставок

2.3.4 Использование регистров

2.3.5 Связь с операционной системой

2.3.6 Описание наиболее часто используемых функций из системных библиотек

2.4 Технология создания исполняемой программы

2.4.1 Текстовый редактор

2.4.2 Компилятор

2.4.3 Редактор связей

2.4.4 Отладчик

2.4.5 Помощь

2.4.6 Вспомогательные средства

2.4.7 Средства управления проектом

Глава 3. Событийно-ориентированное программирование

Введение

3.1 Графический интерфейс пользователя (GDI)

3.2 Программирование функциональности окна

3.3 Создание, идентификация и удаление объектов Windows

3.4 Основные типы Windows

3.5 Структура приложение

3.6 Главная функция (WinMain)

3.7 Оконная процедура

3.7.1 Процесс создания окна

3.7.2 Процесс отображения окна

3.7.3 Процесс завершения работы приложения

3.7.4 Процесс обработки сообщений по умолчанию

3.7.5 Процесс перерисовки окна

3.8 Контекст устройства

3.8.1 Контекст устройства дисплея

3.8.2 Контекст устройства для работы с принтером

3.8.3 Контекст устройства для работы с памятью

3.9 Шрифты и вывод текста

3.9.1 Компьютерное представление текста

3.9.2 Шрифт

3.9.3 Вывод текста в Windows

3.10 Вывод фигур и линий

3.10.1 Функции вывода фигур

3.10.2 Вывод линий

3.10.3 Вывод кривых (curves)

3.11 Битовые карты (bitmap)

3.12 Работа с клавиатурой

3.13 Работа с мышкой

3.13.1 Пример рисование линий (эффект резиновой нити)

3.14 Ресурсы

3.14.1 Основные понятия

3.14.2 Язык описания ресурса

3.14.3 Использование ресурсов

3.15 Процесс обработки WM_COMMAND

3.16 Стандартные элементы управления (Control)

3.16.1 Кнопки (Buttons)

3.16.2 Статические поля

3.16.3 Редактируемые поля (Edit)

3.16.4 Перечни

3.16.5 Линейки прокрутки

3.17 Диалоговые панели

Глава 4. Объектно-ориентированное программирование

Введение

4.1 Объектно-ориентированное программирование на С++

4.1.1 Простейший ввод/вывод

4.1.2 Понятие ссылки

4.1.3 Операторы new и delete

4.1.4 Операция разрешения видимости ::

4.1.5 Понятие класса

4.1.6 Указатель this

4.1.7 Объект

4.1.8 Конструктор

4.1.9 Деструктор

4.1.10 Конструктор копирования

4.1.11 Определение прав доступа к членам объектов класса

4.1.12 Статические члены класса

4.1.13 Наследование

4.1.14 Дружественные функции и классы

4.1.15 Полиморфизм

4.1.16 Перегрузка операций

4.1.17 Импорт объектов

4.1.18 Идентификация объектов во время выполнения (RTTI)

4.1.19 Контейнеры

4.1.20 Списки

4.1.21 Шаблоны

4.1.22 Обработка исключительных ситуаций

4.1.23 Потоки ввода/вывода

4.2 Реализация классов средствами Си

4.3 Реализация объктно-ориентированного подхода для создания приложения в Windows