Развитие объектно-ориентированного подхода обусловлено ограниченностью других методов программирования, разработанных ранее.
Предшествующий объектно-ориентированному подход — процедурный. В этом случае каждый оператор языка является указанием компьютеру совершить некоторое действие, например: вывести данные на экран, вычислить выражение. Программы, написанные на процедурных языках представляют собой последовательность инструкций. Когда размер программы становится велик, список команд становится слишком громоздким. Поэтому код разделяют на процедуры и функции — логически отделенные друг от друга части кода. Процедурный подход имеет два основных недостатка:
— ограниченность доступа функций к глобальным переменным;
— разделение данных и функций плохо отображает картину реального мира [3, c. 34].
Основополагающая идея объектно-ориентированного программирования (ООП) — объединение данных и действий, производимых над этими данными в единое целое, которое называется объектом.
Целью работы является рассмотрение понятия объекта и реализации основных механизмов объектно-ориентированного программирования (инкапсуляция, наследование, полиморфизм) в языке программирования С++, исключение составляет понятие глобально-уникального идентификатора интерфейса, так как в языке С++ не существует предопределенного типа для интерфейса, поэтому приведен пример на языке Object Pascal (среда программирования Delphi) (п. 4.4).
Актуальность темы
заключается в том, что в настоящее время разработка крупных проектов ведется с использованием объектно-ориентированного подхода. Примером широкого распространения объектно-ориентированного подхода является технология .NET Framework, которая предназначена для создания обычных программ и веб-приложений. Основная идея Microsoft .NET — совместимость различных служб, написанных на разных языках. Например, служба, написанная на C++ для Microsoft .NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследованный от класса, написанного на Visual Basic .NET, а исключение, созданное методом, написанным на C#, может быть перехвачено и обработано в Delphi. Данная технология базируется на понятии класса.