Основы программирования в среде Delphi 7.0 (47968)

Посмотреть архив целиком

Кафедра: Автоматика и информационные технологии















КУРСОВАЯ РАБОТА

На тему: "Основы программирования в среде Delphi 7.0"













Екатеринбург, 2009 год


Содержание


Введение

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

2. Интегрированная среда разработки Delphi: назначение и общее описание среды

3. Общая организация программы в Delphi

4. Некоторые справочные сведения для работы в среде Delphi

Заключение

Список литературы




Введение


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

Hадо отметить, что к моменту выхода продукта обстановка вокруг компании Borland складывалась не лучшим для нее образом. Поговаривали о возможной перепродаже компании, курс акций компании неудержимо катился вниз. Сейчас уже можно без всяких сомнений утверждать, что период трудностей позади. Hеверно, конечно, было бы говорить, что только Delphi явился причиной восстановления компании; кроме Delphi, у Borland появились и другие замечательные продукты, так же, как и Delphi, основывающиеся на новых, появившихся недавно у компании Borland, технологиях. Я имею в виду новые BDE 2.0, BC++ 4.5, Paradox for Windows 5.0, dBase for Windows 5.0, BC++ 2.0 for OS/2.

Тем не менее, именно Delphi стал тем продуктом, на примере которого стало ясно, что у Borland есть еще порох в пороховницах, и что один единственный продукт может настолько удачно сочетать несколько передовых технологий.




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


Объектно-ориентированное программирование (ООП) зародилось в языках программирования Паскаль, Ада, С++. До появления ООП технология создания компьютерных программ базировалась на процедурном программировании, в котором основой программ являлись функции и процедуры, т.е. действия. Созданная т.о. компьютерная программа отличалась четким алгоритмом работы – последовательностью действий по достижению поставленной цели. В ООП основной точкой опоры при проектировании программы является – объект. Программа ООП – это не последовательность операторов, а совокупность объектов и способов их взаимодействия. Обмен информацией между объектами происходит посредством сообщений.

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

2) Основным понятием ООП является понятие класса: классом – называют особую структуру, которая может иметь в своем составе поля, методы и свойства. Класс – это множество объектов, которые обладают внутренними свойствами, присущими любому объекту класса. Причем специфика класс проводится путем определения его внутренних свойств (классообразующие признаки). Класс выступает в качестве объектного типа данных. Классы имеют поля (как тип данных Record), свойства (напоминающие поля, но имеющие дополнительные описания) и методы (подпрограммы, которые обрабатывают поля и свойства класса). Базовым классом для всех объектов в Delphi, является класс TObject. Этот класс инкапсулирует основные функции, свойственные всем объектам Delphi. Все классы в Delphi являются прямыми или косвенными наследниками этого класса.

3) Иерархия объектов класса. Каждый конкретный класс имеет свои особенности поведения и характеристик, определяющих этот класс. Например, класс геометрических фигур можно разделить на два подкласса: плоские и объемные фигуры. Плоские фигуры могут иметь вершины и не иметь их. Плоскими фигурами, не имеющими вершин, являются окружности и эллипсы.










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

4) Наследование. В терминах Паскаль объект наиболее схож с типом Record, который является структурированным типом для объединения нескольких связанных элементов под одним именем. Предположим, что требуется написать программу, которая подсчитывает размер стипендий и заработной платы в институте или университете. Переменная (назовем ее TPerson), содержащая данные об именах студентов и сотрудников, дате и размере выплат, могла бы выглядеть следующим образом:


TPerson = Record

Name: String [30]; {поле – имя}

Date: String [10]; {поле – дата}

RazV: Real; {поле – размер выплаты}

End;


Каждое значение, присвоенное переменной TPerson, является экземпляром типа record, представляет два уровня абстракции, т.е. можно рассматривать поля Имя, Дата, Размер_выплат по отдельности, или в совокупности для описания конкретного человека как TPerson.

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


TStudent = Record

Name: String [30];

Date: String [10];

RazV: Real;

Ball: Real; {средний балл}

End;


Однако можно сохранить тип TPerson путем создания поля Student типа TPerson внутри типа TStudent.


TSudent = Record

Student: TPerson;

Ball: Real;

End;


Такая конструкция удобна и проста, поэтому постоянно используется в программировании. Для студента тип TStudent должен содержать все поля, которые имеются в записи TPerson, при этом тип TStudent является типом потомком для типа TPerson. TStudent наследует все, что принадлежит TPerson, и кроме того, содержит новые поля, которые делают TSudent уникальным.

Процесс, с помощью которого один тип наследует характеристики другого типа, называется наследованием. В Delphi все классы являются потомками класса TObject. В примере два связанных типа объектов могли бы определяться следующим образом:


TPersonal = Object

Name: String [30];

Date: String [10];

RazV: Real;

End;


5) Операции и методы. Функция (или преобразование), которую можно применять к объектам данного класса, называется операцией. Если одна и та же операция применяется к объектам разного класса, то ее называют полиморфной. Обычно при работе с записями возникает проблема инициализации полей записи. Для присвоения полям, в рассмотренном ранее примере, начальных значений можно использовать оператор With, но при необходимости инициализировать более одной записи придется использовать большое число операторов With, которые будут выполнять одни и те же действия. Поэтому естественным является создание инициализирующей процедуры, которая обобщает применение оператора with к любому экземпляру типа TPerson, передаваемого в качестве параметра:


Procedure Init (var Person: TPerson; N, D: String; R: Real);

Begin

With Person do begin

Name: = N;

Date: = D;

RazV: = R;

End;

End;


Процедура Init, включенная в объект специально для обслуживания типа TPerson, называется методом, т.е. метод – это процедура или функция, включенная в объект таким образом, что экземпляр данного типа становится доступным для нее изнутри. Поля и методы являются двумя составными частями новой структуры, называемой объектом. С учет вышесказанного объект TPerson можно описать следующим образом:


Type

Tperson = Object;

Name: String [30];

Date: String [10];

RazV: Real;

Procedure Init (N, D: String; R: Real);

End;

Procedure TPerson. Init (N, D: String; R: Real);

Begin

Name: = N;

Date: = D;

RazV: = R;

End;


Таким образом, каждой операции соответствует метод – реализация этой операции для объектов данного класса. Каждая операция имеет один неявный аргумент – объект, к которому она применяется. Выбор метода связан только с классом и объектом. Теперь для инициализации экземпляра типа TStudent достаточно просто вызвать его метод:


Var Person: TPerson;

Person. Init (» Николай Иванович ‘, ‘25–06–1995 ‘, 40000);



6) Определение методов. Процесс определения методов напоминает создание модулей в Turbo Pascal. Внутри объекта метод определяется заголовком процедуры или функции, действующей как метод:


Type

Tperson = Object;

Name: String [30];

Date: String [10];

RazV: Real;

Procedure Init (N, D: String; R: Real);

Function GetName: String;

Function GetDate: String;

Function GetRazV: Real;

End;


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


Procedure TPerson. Init (N, D: String; R: Real);

Begin

Name: = N;

Date: = D;

RazV: = R;

End;

Function TPerson. GetName: String;

Begin

GetName: = N;

End;

Function TPerson. GetDate: String;

Begin

GetDate: = D;

End;

Function TPerson. GetRazV: Real;

Begin

GetRazV: = R;

End;


7) Свойства объекта. Совокупность данных и методов их чтение и записи называются свойством. Свойства объектов можно устанавливать в процессе проектирования, а также можно изменять программно во время выполнения программы. (В процессе проектирования приложений в среде программирования Delphi можно просматривать значения некоторых из этих данных в окне Инспектора Объектов и изменять эти значения).


Случайные файлы

Файл
164783.doc
126394.rtf
23718-1.rtf
33527.rtf
45159.doc




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.