Объектно-ориентированное программирование
- Объектно-ориентированное программирование
- Локальные и глобальные переменные
- Подпрограммы и их аргументы
- Определение данных
- Операторы динамического распределения памяти
- Перегрузка функций и операций
- Правила составления перегружаемых функций и операций
- Класс как обобщение структуры
- Определение первичного класса
- Перегрузка операций
- Конструкторы
- Список инициализации
- Деструктор
- Дружественные классы
- Статические элементы класса
- Шаблоны функций
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ
В языках программирования Basic, Pascal, C, не являющихся объектно-ориентированными, определяются типы данных, операции над этими типами и операторы, управляющие работой программы. При решении задач, оперирующих со сложными типами данных — массивами, списками появляется необходимость в определении новых типов данных.
Например, определить такой тип данных, что вектора являются переменными этого типа, а операции суммы векторов и векторного произведения определить с помощью действий над ними:
Vector u(1, 1, 0), v(0, -1, 0.5), w;
w = u * v; // векторное произведение
w = w + u; // сумма векторов
Возможность такого подхода в программировании была реализована в объектно-ориентированных языках SmallTalk, C++, CLOS (расширение ЛИСПа), Object Pascal, Эйфель и т.д.
Объектно-ориентированная парадигма (способ мышления) основана на трех понятиях:
· инкапсуляция — объединение данных и функций для работы с ними в специальный тип данных — класс, в котором данные доступны лишь для функций этого класса;
· наследование — механизм, позволяющий определять новые типы данных на основе существующих таким образом, что данные и функции существующих классов становятся членами наследуемых классов;
· полиморфизм — обозначение различных действий одним именем и свойство объекта отвечать на направленный к нему запрос сообразно своему типу.
При изучении дисциплины «Объектно-ориентированное программирование» студенты специальности 220400 «Программное обеспечение вычислительной техники и автоматизированных систем», обучающиеся в течение 5 лет, выполняют три расчётно-графических задания (РГЗ), а студенты этой специальности, обучающиеся в течение 3,5 лет, выполняют два РГЗ, а именно РГЗ № 2 и РГЗ № 3.
Номер варианта студента определяется двумя последними цифрами номера его зачетной книжки. Если две последние цифры номера зачетной книжки находятся в диапазоне 00 — 29, то им соответствуют номера вариантов с 01 по 30, например, числу 21 соответствует вариант 22. В других случаях к остатку от деления числа, состоящего из двух последних цифр номера зачетной книжки, на 30 прибавляется единица. Например, если последние цифры составляют число 51, то номер варианта — 22.
Отчет по каждому расчетно-графическому заданию включает в себя титульный лист, задание, алгоритм, текст программы на языке Си++, результат работы программы и список литературы. Отчёт оформляется на листах бумаги формата А4.
После изучения курса студенты сдают письменный экзамен. Билет составляется из экзаменационных вопросов и задач, приведённых в конце данного пособия.