- •Основные понятия ооп (объектно-ориентированного программирования).
- •Классы и компоненты Delphi
- •Принципы объектно-ориентированного программирования.
- •Главное окно
- •2. Окно формы
- •3.Окно кода программы
- •4. Окно инспектора объектов
- •5.Окно дерева объектов (Object TreeView)
- •Начало работы.
- •Последовательность проектирования
- •Структура приложения (программы)
- •Структура проекта
- •Interface //открытый интерфейс модуля
- •Implementation // раздел реализации
Принципы объектно-ориентированного программирования.
В основе классов лежат три фундаментальных принципа, которые называются инкапсуляция, наследование и полиморфизм.
Инкапсуляция.
Объект можно определить как продукт инкапсуляции данных вместе с кодом, предназначенным для их обработки
Объединение в объекте его свойств и методов называют инкапсуляцией (encapsulation).
Некоторые свойства и методы доступны внешним объектам, а некоторые целесообразно спрятать для внутреннего пользования.
Этот принцип сокрытия – один из принципов ООП, называемый инкапсуляцией.
Инкапсуляция означает, что объект инкапсулирует (содержит) в себе свойства и методы, но описывать мы ничего не должны. Под термином «инкапсуляция» подразумевается то, что мы работаем (взаимодействуем) с объектом, совершенно не зная об его устройстве.
Пример: компьютерная мышь. В распоряжении пользователя только несколько кнопок и колесо. Как она устроена знает только разработчик.
Главное преимущество инкапсуляции заключается в том, что достаточно один раз описать структуру объекта, чтобы в дальнейшем использовать его в любом месте программы.
Например,
класс TForm содержит (инкапсулирует в себе) все необходимое для создания Windows-окна,
класс TEdit содержит (инкапсулирует в себе) все необходимое для однострочного ввода/редактирования данных,
класс TMemo представляет собой многострочный текстовый редактор
Инкапсуляция представляет собой мощное средство обмена готовыми к работе программными заготовками.
Наследование.
Любой класс может быть порожден от другого класса.
В ООП объекты объединены в классы.
Класс нематериален, он не соответствует каким-то конкретным данным.
В классе описано, какие переменные и с какими значениями могут быть у объекта. Могут
быть, а не есть в данный момент.
Объект же, наоборот, материален. Он занимает место в памяти компьютера, все его переменные имеют в каждый момент вполне определенные значения.
Именно для конкретных объектов вызываются методы, хотя сами методы описаны в классе, к которому принадлежит данный объект.
Для этого служит механизм наследования – один из трех основных принципов ООП.
Принцип наследования позволяет устанавливать между объектами связи типа «родитель-потомок». Объект-потомок наследует от объекта-родителя все его атрибуты и особенности поведения, но предполагает наличие у потомка ряда новых атрибутов и функциональных возможностей.
Принцип наследования можно проиллюстрировать на примере иерархии объектов:
Фрагмент модуля Unit1(кода программы)
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Button1: TButton;
Класс TForm1 порожден от стандартного класса TForm. Это означает, что класс TForm1 унаследовал все возможности родительского класса TForm и добавил к ним собственные в виде дополнительных компонентов, установленных на форму.
Свойство наследования классами-потомками всех свойств родительского класса и обогащение их новыми возможностями является одним из фундаментальных принципов ООП.
От наследника может быть порожден новый наследник, который внесет свою лепту в виде новых программных заготовок и т.д.
Полиморфизм.
Это свойство родственных объектов, имеющих одного родителя, и позволяющих выполнять одно и то же действие разными способами, а также способность объекта видоизменять свои свойства и методы во время выполнения программы.
С помощью полиморфизма потомки классов получают возможность переопределять действия, заложенные в предках.
Окна интегрированной среды разработки приложений
Запустите Delphi с помощью пиктограммы Delphi или меню Windows Пуск / Программы.
На экране откроется четыре окна интегрированной среды разработки приложений.