Информатика
Тема 3: Основы программированияУрок 5: Объектно-ориентированное программирование. Объекты и классы как отражение реального мира
- Видео
- Тренажер
- Теория
ООП (или объектно-ориентированное программирование) — это подход программирования, основанный на представлении программы в виде совокупности объектов, где каждый из объектов является экземпляром определенного типа (класса).
Класс — это тип данных, который включает описание полей данных, а также процедур и функций, работающих с этими данными. Поля, описанные в классе, используют для хранения составляющих состояния или атрибутов объекта.
Объект — это конкретный экземпляр класса, переменная с именем.
Если просто, класс — это шаблон кода, по которому создаётся какой-то объект. У класса есть состояния и атрибуты, характерные для всего класса. Класс — это некий склад, где лежат данные (или переменные) и функции, работающие с данными, а также функции для обмена данными с другими классами.
В классе могут быть поля с данными (атрибуты класса), процедуры для работы с этими полями, и функции для выдачи пользователям класса нужных результатов.
В отличие от представления программы как совокупности функций в процедурном программировании, в ООП у нас есть возможность создавать объекты, которые можно будет использовать многократно, для того чтобы вы или другие разработчики могли использовать их в своих проектах, не переделывая их снова и снова.
Еще из теории ООП нужно узнать про понятия: инкапсуляция, наследование, полиморфизм.
Наследование — это возможность создавать специализированные классы на основе базовых.
Инкапсуляция — Возможность скрыть внутренние подробности работы объекта от внешнего мира.
Полиморфизм — один и тот же метод (унаследованный от базового) в разных классах может работать по-разному.
У объектно-ориентированного программирования много плюсов, и именно поэтому этот подход использует большинство современных программистов:
- Визуально код становится проще, и его легче читать. Когда всё разбито на объекты и у них есть понятный набор правил, можно сразу понять, за что отвечает каждый объект и из чего он состоит.
- Меньше одинакового кода. Если в обычном программировании одна функция считает повторяющиеся символы в одномерном массиве, а другая — в двумерном, то у них большая часть кода будет одинаковой. В ООП это решается наследованием.
- Сложные программы пишутся проще. Каждую большую программу можно разложить на несколько блоков, сделать им минимальное наполнение, а потом раз за разом подробно наполнить каждый блок.
- Увеличивается скорость написания. На старте можно быстро создать нужные компоненты внутри программы, чтобы получить минимально работающий прототип.
Дополнительные материалы:
Глава 7. Объектно-ориентированное программирование (Информатика. Углубленный уровень: учебник для 11 класса: в 2 ч. Ч.2 / К.Ю. Поляков, Е.А. Еремин. — М.: БИНОМ. Лаборатория знаний, 2013)