Объектно-ориентированное программирование (ООП)
Что это такое?
На этой странице размещены готовые проекты, которые
разбираются в главе 7 «Объектно-ориентированное программирование»
учебника
«Информатика. Углублённый уровень» для 11 класса
К.Ю. Полякова и Е.А. Еремина.
Авторы будут благодарны за отзывы и
конструктивную критику по поводу содержания и оформления представленных материалов.
Если вы нашли неточность или у вас есть что сказать по существу дела, можно отправить
сообщение прямо с этого сайта.
Что такое ООП?
Объектно-ориентированное программирование (ООП) — это подход к написанию
сложных программ, который позволяет выполнить разбиение задачи на части
(декомпозицию) не по алгоритмам (подзадачам), как в классическом процедурном
программировании, а по объектам, что ближе к человеческому восприятию.
Все объекты, используемые в программе, разбиваются на классы, обладающие
общими признаками. Внутреннее устройство, данные объекта и методы работы с ними
определяются классом, к которому он относится.
Для понимания ООП важны четыре основных принципа:
- абстракция — выделение существенных характеристик объекта,
отличающих его от других объектов;
- инкапсуляция — скрытие внутреннего устройства объектов
от других объектов и объединение данных и методов работы с ними в едином понятии
«объект»;
- наследование свойств и методов, при котором объекты-наследники
автоматически приобретают все свойства и методы, имеющиеся у
объектов родительского (базового) класса;
- полиморфизм, состоящий в том, что объекты разных классов
могут по-разному выполнять один и тот же метод.
Проекты по ООП
В учебнике для 11 класса рассмотрено 8 проектных работ, которые учащиеся
должны выполнить самостоятельно, используя материал параграфов 47-55.
Для изучения ООП в учебнике предлагается использовать объектную версию языка Паскаль,
которая реализована, с некоторыми незначительными отличиями,
в средах разработки Free Pascal (Lazarus),
Delphi и PascalABC.NET. Кроме того, с этой страницы можно также
скачать версии проектов на языках C++ и C# (остальные материалы
для изучающих C и С++ см. на
отдельной странице).
- Проект 1. Дорога. Рассматривается модель, включающая
объект-дорогу и несколько объектов-автомашин (§ 47-48).
Последовательность выполнения проекта:
- Начальный вариант (см. § 48).
- На экран выводятся координаты машин.
- На экране показано движение автомашин.
- Добавлен светофор, который переключает цвет по программе.
- Автомашины останавливаются перед красным сигналом светофора.
- Проект 2. Логические элементы. (§ 49-50).
Последовательность выполнения проекта:
- Начальный вариант (см. § 50).
- Добавлены классы TXor, TNotAnd, TNotOr.
Описание классов выделено в модуль LogElement.
- Собран триггер на элементах TNotOr.
- Собран триггер на элементах TNotAnd.
- Cобран шифратор «4 в 2».
- Cобран дешифратор «2 в 4».
- Проект 3. Форма и её свойства. (§ 51-52).
- Проект 4. Компоненты. (§ 53).
Последовательность выполнения проекта:
- Начальный вариант (см. § 53).
- Если рисунок меньше, чем свободная область, он центрируется в окне.
- Проект 5. Ввод данных. (§ 53).
Последовательность выполнения проекта:
- Начальный вариант (см. § 54)
- Сделан автоматчиеский перевод шестнадцатеричного кода цвета в RGB.
- Проект 6. Новый компонент. (§ 54).
Последовательность выполнения проекта:
- Начальный вариант (см. § 54)
- Компонент установлен в палитру компонентов.
- Проект 7. Вычисление арифметических выражений. (§ 55).
Последовательность выполнения проекта:
- Начальный вариант (см. § 55)
- Работа с вещественными числами. Обработка ошибок.
- Вычисление выражений со скобками.
- Проект 8. Калькулятор. (самостоятельная работа).
В архиве, ссылка на который приведена ниже, представлены варианты
программ из учебника для сред разработки Free Pascal (Lazarus),
Delphi и PascalABC.NET.
Работоспособность программ проверялась на следующих версиях сред программирования:
Новейшие версии первых трёх продуктов можно бесплатно скачать по
ссылкам, приведённым выше.
В предыдущих версиях Lazarus
и PascalABC.NET некоторые проекты могут быть неработоспособны из-за изменений,
внесённых в язык программирования, и различий в способе хранения данных.
Комментарии
Вы можете написать свои отзывы и пожелания по поводу
представленных материалов по объектно-ориентированному программированию.
Если у вас нет учетной записи в социальной сети ВКонтакте, можно отправить
сообщение прямо с этого сайта.