Введение в объектно-ориентированное программирование
Исторически сложилось так, что программирование возникло и развивалось как процедурное программирование, которое предполагает, что основой программы являетсяалгоритм и процедурыобработки данных. Нов ООП проще думатьи разрабатывать большие, сложные продукты
Концепция ООП разработана для увеличения производительностипрограммиста, приближение процесса программирования к процессучеловеческого мышления истандартизациюкак программ, так их и подхода к ним.
Три основополагающих принципа объектно-ориентированного программирования (ООП): инкапсуляция, наследование, , полиморфизм
В объектно-ориентированном программировании основой являетсяобъект и класс.
Объект — это некоторая структура, соответствующая объекту реального мира и его поведению (то есть некая совокупность данных и способов работы с ними). Например: кнопка или поле ввода.
Задача, решаемая с использованием методики ООП, описывается в терминах объектов и операций над ними, а программа при таком подходе представляет собой набор объектов и связей между ними. Объект в целом предназначен для решения какой-либо отдельной конкретной задачи и воспринимается в программе как неделимое целое (т.е. нельзя из объекта «выдернуть» отдельное поле(свойство) или метод(функцию)).
Все объекты, имеющие однотипное поведение или как принято говорить в ООП, обладающие общими методами, составляют один класс.
Примечание
Строго говоря, для разработки приложения в Delphi на базе компонентов, предоставляемых средой разработки, знание концепции ООП не является необходимым. Однако материал данной главы будет весьма полезен для более глубокого понимания того, как программа взаимодействует с компонентами, что и почему Delphi добавляет в текст программы.
КЛАСС
Языки PascalABC (и Object Pascal начиная с 8 версии) поддерживают концепцию объектно-ориентированного программирования, так же как и ЯзыкDelphiи дает возможность определятьклассы .
Класс — это сложный тип данных схожий с комбинированным типом (records) , но включающий в себя, помимо описания полей данных, еще описание процедур и функций, которые могут быть выполнены над переменной этого типаданных (класса)и для обработки ее полей.
В терминологии ООП данныекласса называютсяполями ( илисвойствами) и служат для хранения информации об объекте., апроцедуры и функции— называются методами. предназначенные для обработки полей.
Описание класса имеет вид:
type имя класса=class описания полей объявления или описания методов и описания свойств end;
Пример объявления простого класса:
type TPerson = class
private
f_name: string[15]; //поле
f_address: string[35];//поле
f_age: integer;
public
procedure Show; // объявление (декларация) метода
end;
Примечание: Согласно принятому в Delphi соглашению, имена полей должны начинаться с буквы f (от слова field — поле).
Поля и методы образуют интерфейскласса
Еще пример объявления класса:
type ТStudent=class name: string; course, group: integer; constructor {procedure} Create(nm: string; c,gr: integer); procedure Print; begin writeln('Имя:',name,' курс:',course,' группа:',group); end; procedure NextCourse; begin Inc(course); end; end;
constructor {procedure} ТStudent.Create(nm: string; c,gr: integer); begin name:=nm; course:=c; group:=g; end;
Например, класс TForm (формы) содержит различные виды форм: пустую форму, форму для ввода пароля, форма «О программе» и т. д. Свойства у этих форм разные (цвет, размер, названия и т. д.), а поведение одинаковое (открываются, закрываются, перемещаются и т. д.).
ОБЪЕКТ
Объект - представитель класса или другими словами – переменная этого типа (класса) и объявляется в программе в разделе var
Например:
var
stud1, stud2 : Тstudent ;
professor: TPerson;
Пример Объектом в Delphi может являться компонент Edit2 или Button3/
var
Edit2:TEdit;
Button3:TButton;
Объект в целом предназначен для решения какой-либо конкретной задачи и воспринимается в программе как неделимое целое (т.е. нельзя из объекта «выдернуть» отдельное поле или метод).