Информатика

Тема 3: Основы программирования

Урок 5: Объектно-ориентированное программирование. Объекты и классы как отражение реального мира

  • Видео
  • Тренажер
  • Теория
Заметили ошибку?

ООП (или объектно-ориентированное программирование) — это подход программирования, основанный на представлении программы в виде совокупности объектов, где каждый из объектов является экземпляром определенного типа (класса).

Класс — это тип данных, который включает описание полей данных, а также процедур и функций, работающих с этими данными. Поля, описанные в классе, используют для хранения составляющих состояния или атрибутов объекта.

Объект — это конкретный экземпляр класса, переменная с именем. 

Если просто, класс — это шаблон кода, по которому создаётся какой-то объект. У класса есть состояния и атрибуты, характерные для всего класса. Класс — это некий склад, где лежат данные (или переменные) и функции, работающие с данными, а также функции для обмена данными с другими классами.

В классе могут быть поля с данными (атрибуты класса), процедуры для работы с этими полями, и функции для выдачи пользователям класса нужных результатов. 

 

 

 

В отличие от представления программы как совокупности функций в процедурном программировании, в ООП у нас есть возможность создавать объекты, которые можно будет использовать многократно, для того чтобы вы или другие разработчики могли использовать их в своих проектах, не переделывая их снова и снова.


 

Еще из теории ООП нужно узнать про понятия: инкапсуляция, наследование, полиморфизм.

 
Наследование — это возможность создавать специализированные классы на основе базовых.
Инкапсуляция — Возможность скрыть внутренние подробности работы объекта от внешнего мира.
Полиморфизм — один и тот же метод (унаследованный от базового) в разных классах может работать по-разному. 

У объектно-ориентированного программирования много плюсов, и именно поэтому этот подход использует большинство современных программистов:

  • Визуально код становится проще, и его легче читать. Когда всё разбито на объекты и у них есть понятный набор правил, можно сразу понять, за что отвечает каждый объект и из чего он состоит.
  • Меньше одинакового кода. Если в обычном программировании одна функция считает повторяющиеся символы в одномерном массиве, а другая — в двумерном, то у них большая часть кода будет одинаковой. В ООП это решается наследованием.
  • Сложные программы пишутся проще. Каждую большую программу можно разложить на несколько блоков, сделать им минимальное наполнение, а потом раз за разом подробно наполнить каждый блок.
  • Увеличивается скорость написания. На старте можно быстро создать нужные компоненты внутри программы, чтобы получить минимально работающий прототип.

 

Дополнительные материалы:

Глава 7. Объектно-ориентированное программирование (Информатика. Углубленный уровень: учебник для 11 класса: в 2 ч. Ч.2 / К.Ю. Поляков, Е.А. Еремин. — М.: БИНОМ. Лаборатория знаний, 2013)