Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР №2-3 ООП.docx
Скачиваний:
1
Добавлен:
03.05.2019
Размер:
248.49 Кб
Скачать
    1. Сообщения

Кроме трех фундаментальных возможностей объектно-ориентированного программирования, в среде Delphi реализована новая характеристика объекта - возможность обработки так называемых сообщений (или событий), получаемых из Windows или самой программы. Этот принцип лежит в основе работы визуальных компонентов Delphi, которые обрабатывают различные события, возникающие в процессе выполнения программы.

  1. Разработка структуры объекта

Главная функция разработчика - создавать вещи,

которые трудно производить и невозможно обслуживать.

Из законов Мэрфи

Итак, объект в программировании – набор переменных разного типа, называемых полями (как и у записи), и процедур или функций, называемых методами (methods), которые выполняют определенные действия над свойствами. Например, объект "регулируемый асинхронный электродвигатель" может иметь свойства "мощность", "частота вращения", "момент на валу", "напряжение питания", и методы "запустить двигатель", "сменить частоту вращения", "остановить двигатель".

Первый этап – выделить характерных свойства и методы реального объекта. Для электродвигателя примем следующее:

Свойства

Методы

Потребляемая мощность

Включить двигатель

Текущая частота вращения

Изменить частоту вращения

Направление вращения

Остановить двигатель

Номинальная частота вращения

Изменить направление вращения

Аварийный останов

Методы "остановить двигатель" и "Аварийный останов" отличаются тем, что в первом случае напряжение питания снижается в плавно, а во втором – мгновенно.

На втором этапе нужно дать названия полям, в которых хранятся свойства, и методам, для каждого свойства выбрать подходящий тип данных, а для метода – установить, какая информация необходима для его выполнения. Разумеется, все названия должны даваться по правилам языков программирования – английскими буквами, без пробелов и т.д. Настоятельно рекомендуется использовать правильные английские слова:

Свойство реального объекта

Название поля

Тип данных

Потребляемая мощность

Power

REAL

Текущая частота вращения

RPM

WORD

Направление вращения

Direction

Tdir

Сигнал аварийного останова

BR

Boolean

Номинальная частота вращения

Nominal

WORD

Свойство BR будет устанавливаться в TRUE при подаче команды «Авария».

А как быть с типом данных направления вращения? Конечно, можно договориться, что, к примеру, "1" или True означает вращение по часовой стрелке, а "2" или False – против часовой, но это неудобно.

Нормальные люди поступают следующим образом: вводят свой перечислимый тип данных TDir:

TYPE TDir=(CLOCKWISE, COUNTERCLOCKWISE);

Обратите внимание, что название типа данных (TDir) может быть выбрано произвольно. Оно никак не связано с названием переменной Dir. Просто обычно названия типов начинают с буквы "Т", чтобы не путать их с именами переменных. Аналогично классу нашего объекта присвоим название TMotor.

Теперь в программе можно создавать переменные типа Tdir, которые принимают только два значения: CLOCKWISE и COUNTERCLOCKWISE.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]