Основные принципы объектно-ориентированного программирования


Центральной идеей ООП является реализация понятия «абстракция»[7]. Смысл абстракции заключается в том, что сущность произвольной сложности можно рассматривать, а также производить определенные действия над ней, как над единым целым, не вдаваясь в детали внутреннего построения и функционирования.

При создании программного комплекса необходимо разработать определенные абстракции.

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

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

Различают типовуюиерархию и структурнуюиерархию, которые далее будут называться соответственно структурой классови структурой объектов.

Во всех объектно-ориентированных языках программирования реализованы следующие основные механизмы(постулаты) ООП[5-6]:

· инкапсуляция,

· наследование,

· полиморфизм.

Все эти механизмы важны для разработки и использования абстракций.

1)Инкапсуляция– механизм, связывающий вместе код и данные, которыми он манипулирует, и одновременно защищающий их от произвольного доступа со стороны другого кода, внешнего по отношению к рассматриваемому. Доступ к коду и данным жестко контролируется интерфейсом.

Основой инкапсуляции при ООП является класс.

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

2)Наследование– механизм, с помощью которого один объект (производного класса) приобретает свойства другого объекта (родительского, базового класса). При использовании наследования новый объект не обязательно описывать, начиная с нуля, что существенно упрощает работу программиста. Наследование позволяет какому-либо объекту наследовать от своего родителя общие атрибуты, а для себя определять только те характеристики, которые делают его уникальным внутри класса.

Наследование есть очень важное понятие, поддерживающее концепцию иерархической классификации.

3)Полиморфизм– механизм, позволяющий использовать один и тот же интерфейс для общего класса действий.

2. Классы и объекты в языке С++

Центральным понятием ООП на С++ является класс. Класс используется для опи­сания типа, на основе которого создаются объекты этого типа(переменные типа класс).

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

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



Дата добавления: 2021-07-22; просмотров: 360;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.