Объектно-ориентированное программирование (ООП)

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

OOП включает лучшие идеи, воплощённые как в структурном программировании, так и в модульном. «Является еще более структурным программированием, еще более модульным» (Джеф Дантеманн?).

И, кроме того, ООП сочетает старые принципы с мощными новыми концепциями, которые позволяют оптимально организовывать программы.

Объектно-ориентированное программирование позволяет разложить проблему на составные части. Каждая составляющая становится самостоятельным объектом, содержащим свои собственные коды и данные, которые относятся к этому объекту. В этом случае программирование в целом упрощается, и программист получает возможность оперировать гораздо большими по объёму программами.

Таким образом, ООП – «это методология, основанная на представлении программы в виде совокупности объектов, каждый из которых является реализацией собственного класса» (А.Д. Александровский).

Основным понятием ООП является понятие класса.

Класс – множество объектов, связанных общностью структуры и поведения (класс содержит описание структуры и поведение всех объектов, связанных отношением общности). Любой объект является экземпляром класса.

Методом называется процедура или функция, определенная внутри класса.

Базовые принципы ООП

ООП характеризуется тремя базовыми принципами:

1. Инкапсуляция

2. Наследование

3. Полиморфизм

Инкапсуляция

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

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

Итак, инкапсуляция означает, что методы (коды) и данные одновременно представлены в одной и той же структуре.

Например,

Type

Coordinates = class

x, y: byte;

procedure Init (Xinit, Yinit: byte);

function GetX: byte;

function GetY: byte;

end;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: