Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа 2012 / ВВЕДЕНИЕ В ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ.doc
Скачиваний:
45
Добавлен:
07.06.2015
Размер:
183.81 Кб
Скачать

Введение в объектно-ориентированное программирование

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

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

Три основополагающих принципа объектно-ориентированного программирования (ООП): инкапсуляция, наследование, , полиморфизм

В объектно-ориентированном программировании основой являетсяобъект и класс.

Объект — это некоторая структура, соответствующая объекту реального мира и его поведению (то есть некая совокупность данных и способов работы с ними). Например: кнопка или поле ввода.

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

Все объекты, имеющие однотипное поведение или как принято говорить в ООП, обладающие общими методами, составляют один класс.

Примечание

Строго говоря, для разработки приложения в 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;

Объект в целом предназначен для решения какой-либо конкретной задачи и воспринимается в программе как неделимое целое (т.е. нельзя из объекта «выдернуть» отдельное поле или метод).