Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Тема 6_Технологии программирования и ООП

.pdf
Скачиваний:
21
Добавлен:
18.03.2015
Размер:
715.73 Кб
Скачать

Кафедра

 

 

 

 

Кафедра

 

 

информатики

 

 

 

информатики

 

 

 

Тема

УГАТУ

 

ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

УГАТУ

 

 

 

 

 

 

 

 

Технологии программирования

Технологией программирования называют

 

 

 

совокупность методов и средств,

 

 

Объектно-ориентированное

 

 

 

 

 

 

используемых в процессе разработки

 

 

 

программирование

 

 

 

программного обеспечения.

 

 

 

 

 

 

 

 

 

 

 

 

 

Основные этапы развития технологии программирования:

 

 

 

 

 

I. «Cтихийное» программирование (от появления первых

 

 

 

 

 

 

вычислительных машин до середины 60-х годов XX в).

 

 

 

 

 

 

II. Cтруктурное программирование (60-70-е годы XX в.).

 

 

 

 

 

 

III. Объектно-ориентированное программирование (с середины 80-х

 

 

 

 

 

до конца 90-х годов ХХ века).

 

 

 

 

 

 

IV. Компонентный подход к программированию и CASE-технологии (с

 

 

 

 

 

середины 90-х годов XX до нашего времени).

 

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

2

Кафедра

 

 

 

 

Кафедра

 

 

информатики

 

 

 

информатики

 

 

«Cтихийное» программирование

 

 

«Cтихийное» программирование»

 

 

 

 

УГАТУ

 

 

УГАТУ

«Стихийное» программирование. Первый этап РАЗВИТИЯ

 

Создание языков программирования высокого уровня, таких,

 

как FORTRAN и ALGOL, существенно упростило

 

ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ от появления первых

 

 

 

программирование, это позволило увеличить сложность

 

вычислительных машин до середины 60-х годов XX в.

 

 

 

программ.

 

Первые программы имели простейшую структуру. Они

 

Типичная программа того времени состояла из основной

 

состояли из собственно программы на машинном языке

 

программы, области глобальных данных и набора

 

и обрабатываемых ею данных.

 

 

подпрограмм (в основном библиотечных), выполняющих

 

 

 

 

 

обработку всех данных или их части.

 

 

 

Структура первых программ:

 

 

 

 

 

 

 

 

 

 

Архитектура программы с

 

 

 

 

 

 

глобальной областью данных:

 

Появление Aссемблеров позволило вместо двоичных или 16-ричных

 

 

 

 

кодов использовать символические имена данных и мнемоники кодов

 

 

 

операций. В результате программы стали более «читаемыми».

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2,

2009 г.

3

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

4

Кафедра

 

Кафедра

 

информатики«Cтихийное» программирование

УГАТУ

информатики Cтруктурное программирование

УГАТУ

Чтобы сократить количество искажений в результате работы

 

Структурный подход к программированию. Второй этап

подпрограмм части глобальных данных, в подпрограммах стали

развития технологии программирования – 60-70-е

 

размещать локальные данные.

 

годы XX в., в основе которого лежит декомпозиция

 

 

(разбиение на части) сложных систем с целью

 

Архитектура программы

 

последующей реализации в виде отдельных

 

 

небольших (до 40-50 операторов) подпрограмм.

 

использующей подпрограммы с

 

 

 

 

 

локальными данными:

 

При таком подходе задача представляется в виде

 

 

 

иерархии подзадач простейшей структуры.

 

 

 

Проектирование осуществляется «сверху вниз» и

 

 

 

подразумевает реализацию общей идеи,

 

 

 

обеспечивая проработку интерфейсов подпрограмм

На этом этапе «стихийного» программирования вначале проектировали и

 

(нисходящее проектирование).

 

 

 

 

реализовывали сравнительно простые подпрограммы, из которых затем

Поддержка принципов структурного программирования

пытались построить сложную программу, т.е. использовался подход «снизу-

была заложена в основу так называемых

 

вверх» (восходящее проектирование). Интерфейсы подпрограмм

 

процедурных языков программирования

 

получались сложными, и при сборке программного продукта выявлялось

 

(Фортран, Алгол, Кобол, PL/I, Basic, Pascal , Си).

 

большое количество ошибок согласования.

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

5

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

6

Кафедра

 

Кафедра

 

информатики Cтруктурное программирование

УГАТУ

информатики Cтруктурное программирование

УГАТУ

 

 

Дальнейший рост сложности и размеров

 

Связи между модулями

разрабатываемого программного обеспечения

 

 

при использовании

 

потребовал развития структурирования данных, в

 

данной технологии

 

языках появляется возможность определения

 

осуществляются через

пользовательских типов данных.

 

специальный интерфейс,

 

в то время как доступ к

Стремление разграничить доступ к глобальным

 

 

реализации самого

 

данным программы, привело к возникновению

 

модуля (телам

 

технологии модульного программирования.

 

подпрограмм и

 

Модульное программирование предполагает

 

некоторым «внутренним»

 

переменным) запрещен.

выделение групп подпрограмм, использующих одни и

 

 

те же глобальные данные, в отдельно

 

 

 

компилируемые модули (библиотеки подпрограмм),

 

 

 

например, модуль графических ресурсов, модуль

 

 

 

подпрограмм вывода на принтер и т.п.

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

7

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

8

Кафедра

 

Кафедра

Объектно-ориентированное

 

информатики Cтруктурное программирование

УГАТУ

информатики

программирование

УГАТУ

 

 

 

 

 

 

В основу структурного программирования были положены три вида

 

Объектный подход к программированию. Третий этап

 

 

вычислительного процесса: линейный, разветвленный и циклический,

 

 

 

развития технологии программирования – с

 

 

которые реализуются в программах с помощью шести конструкций:

 

 

 

 

середины 80-х до конца 90-х годов ХХ века.

 

-

Следование: последовательное выполнение действий;

 

 

 

 

 

 

 

 

-

Ветвление: выбор одного из двух вариантов действий;

 

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

 

-

Выбор: выбор одного варианта из нескольких в зависимости

 

 

определяется как технология создания сложного

 

 

 

программного обеспечения, основанная на

 

 

от значения некоторой величины;

 

 

 

- Цикл – «Пока»: повторение действий, пока не будет нарушено

 

 

представлении программы в виде совокупности

 

 

некоторое условие, выполнение которого проверяется в начале цикла;

 

объектов, каждый из которых является экземпляром

 

- Цикл – «Дo тех пор пока не»: повторение действий до тех пор пока не

 

определенного типа (класса), а классы образуют

 

 

иерархию с наследованием свойств.

 

 

выполнится заданное условие, проверка которого осуществляется

 

 

 

после выполнения действий в цикле;

 

Взаимодействие программных объектов в такой

 

- Цикл с заданным числом повторений (цикл с параметром, цикл со

 

 

системе осуществляется путем передачи сообщений.

 

счетчиком): повторение некоторых действий указанное количество раз.

 

Структурное программирование называют еще «программирование без go to».

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

9

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

10

Кафедра

 

Кафедра

Компонентный подход и

 

информатики

 

информатики

 

 

 

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

 

 

CASE-технологии

 

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

 

 

Основным достоинством

 

Компонентный подход и CASE-технологии. Четвертый

 

 

 

этап развития технологии программирования –

 

объектно-ориентированного

 

 

 

программирования по сравнению с

 

 

(с середины 90-х годов XX до нашего времени)

 

модульным является «более

 

 

предполагает построение программного обеспечения

естественная» декомпозиция

 

 

 

 

из отдельных компонентов - физически отдельно

 

программного обеспечения.

 

 

 

Объектный подход предлагает

 

 

существующих частей программного обеспечения,

 

новые способы организации

 

 

которые взаимодействуют между собой через

 

программ и позволяют

 

 

 

 

 

стандартизованные интерфейсы.

 

конструировать сложные

 

 

 

объекты из сравнительно

 

 

 

 

 

простых.

 

В отличие от обычных объектов объекты-компоненты

 

 

 

 

 

можно собрать в динамически вызываемые

 

Архитектура программы при ООП:

 

 

библиотеки или исполняемые файлы,

 

 

 

 

 

распространять их в двоичном виде (без исходных

 

 

 

 

 

текстов) и использовать в любом языке

 

Object Pascal (Delphi), C++ , Visual Basic,

 

 

программирования, поддерживающем

 

Java

 

 

соответствующую технологию.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

11

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

12

Кафедра

 

Кафедра

Объекты Windows

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

Основные понятия объектно-

 

В ОС Windows приложения, папки, документы, окна, кнопки,

 

 

и др. рассматриваются как объекты.

 

ориентированного

 

Все объекты имеют определенные свойства, и над ними могут

программирования

 

проводиться определенные операции. Например,

 

 

документы имеют определенный объем, их можно

 

 

 

копировать, перемещать, переименовывать. Окна имеют

 

 

 

размеры, их можно изменять. Папки можно открыть,

 

 

 

копировать, переносить, переименовывать.

 

 

 

Хотя каждый из этих объектов имеет разные свойства, с ними

 

 

можно производить различные действия, технология работы

 

 

с объектами и интерфейс универсальны. Это позволяет

 

 

 

пользователю достичь единообразия при работе с разными

 

 

объектами.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

13

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

14

Кафедра

 

Кафедра

 

 

информатикиОсновные компоненты (объекты) Windows

УГАТУ

информатикиОсновные компоненты (объекты) Windows

УГАТУ

 

 

 

Компоненты (элементы управления) – стандартные

 

 

 

 

объекты, используемые ОС для ввода разного рода

 

Диалоговые окна. (DialogBox, Dialog) Используются для проведения

информации.

 

настроек и задания различных параметров. В диалоговых окнах

 

 

 

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

 

Меню (Menu). Это набор всевозможных команд, из которых надо

 

Вкладки (Tab). В диалоговом окне может быть так много элементов

выбрать одну. Меню представляет собой перечень команд, из

 

 

управления, что они в нем не поместятся. В таких случаях окно

 

которых необходимо сделать выбор. Выбор команды

 

 

 

составляют из нескольких страниц-вкладок. У вкладок есть

 

 

 

 

осуществляется кнопкой мыши и щелчком. Обычно это

 

корешки. Чтобы открыть другую страницу диалогового окна, надо

 

 

приводит к выполнению определенной команды.

 

просто щелкнуть на ее корешке левой кнопкой мыши.

 

Все меню обладают общими свойствами: могут иметь несколько

Надпись (Label). Обычное текстовое сообщение, которое

 

уровней (меню, подменю), могут иметь недоступные для

 

 

 

пользователь может прочитать, но не может изменить. Сама

 

 

 

 

выполнения пункты (блеклые), могут иметь пункты, при выборе

 

надпись ничем не управляет, но помогает пользователю

 

которых открываются диалоговые окна (эти пункты имеют

 

управлять программой.

 

названия, которые оканчиваются многоточием).

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

15

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

16

Кафедра

 

 

 

Кафедра

 

 

 

информатикиОсновные компоненты (объекты) Windows

УГАТУ

информатикиОсновные компоненты (объекты) Windows

УГАТУ

 

 

 

 

 

 

Командная кнопка (Button). При ее нажатии исполняется некая

 

Окна. Существуют два типа окон – окна приложений и окна

 

 

документов.

 

 

 

команда. Для работы с кнопками используют мышь. Простой

 

 

 

 

 

 

 

 

 

щелчок мышью используют для работы с элементами

 

В окнах приложений выполняются любые запущенные на

 

управления, двойной щелчок – для работы с объектами

 

выполнение программы или отражается содержимое папки.

 

(значками и папками). Щелчок правой (дополнительной) кнопкой

Открыть или закрыть окно приложений – то же, что запустить

 

мыши применяется для доступа к свойствам объектов, при этом

 

программу на выполнение или завершить ее. Эти окна можно

 

раскрывается контекстное меню.

 

 

перемещать, сворачивать и разворачивать.

 

Стандартные командные кнопки. Автор программы может

 

Окна документов предназначены для работы с документами и

 

создавать любые командные кнопки, но есть несколько

 

«живут» внутри окон приложений. Их также можно раскрывать,

 

общепринятых кнопок: OK (для ввода сделанных настроек и

 

закрывать, сворачивать, перемещать, но они всегда остаются в

 

закрытия диалогового окна), ПРИМЕНИТЬ (чтобы сохранить

 

пределах окна своего приложения. Окно документа всегда

 

настройки, но не закрывать окно), ОТМЕНА ( для отмены всех

 

содержит заголовок (имя документа), а также часто полосы

 

сделанных настроек и закрытия окна).

 

 

прокрутки и линейки.

 

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

17

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

18

Кафедра

 

 

 

Кафедра

 

 

 

информатикиОсновные компоненты (объекты) Windows

УГАТУ

информатикиОсновные компоненты (объекты) Windows

УГАТУ

 

 

 

 

 

 

Поле ввода (TextBox). Позволяет вводить текстовую информацию.

Флажки (Checkbox). Это элементы управления, имеющие два

 

 

 

 

 

 

Этот элемент управления называют текстовым полем.

 

состояния. Они позволяют пользователю делать нужный выбор

 

 

 

 

 

 

Списки (ListBox) представляют собой набор предлагаемых на выбор

параметров. Флажки можно использовать группами, тогда они

 

значений.

 

 

 

позволяют выбрать несколько вариантов из одного списка.

 

Раскрывающийся список (ComboBox). Список, у которого есть

 

Раскрывающийся список не дает такой возможности.

 

 

 

 

 

 

раскрывающая кнопка (в виде треугольной стрелочки). Если по ней

Переключатели (Option). Похожи на флажки, тоже имеют два

 

щелкнуть, раскроется список, в котором выбирается нужное

 

состояния – включено, выключено. Но один из переключателей

 

значение. Списки делают раскрывающимися исключительно для

включен всегда. Когда включается другой переключатель,

 

компактности.

 

 

 

предыдущий выключается.

 

 

Кнопки счетчика. Данные в текстовые поля обычно вводят с

 

Контекстное меню. У каждого объекта есть индивидуальные свойства

помощью клавиатуры, но если это числовые данные, то удобно

 

( к примеру, названия, значки и др.).Если щелкнуть правой кнопкой

пользоваться кнопками счетчика. Это пара кнопок в виде стрелок.

мыши по свободному месту Рабочего стола, раскроется

 

Щелчок по верхней кнопке увеличивает, а по нижней – уменьшает

контекстное меню. Оно содержит команды, относящиеся именно к

значение.

 

 

 

тому объекту, на котором произошел щелчок.

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

19

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

20

Кафедра

 

 

Кафедра

Объекты Windows

 

информатикиОсновные компоненты (объекты) Windows

УГАТУ

информатики

УГАТУ

 

 

 

В программировании дружественными по отношению к

 

 

 

 

пользователю называют программы, которые просты в

 

Движок (ползунок) (Slider). Его перемещают методом

 

работе и понятны с первого взгляда.

 

 

перетаскивания при нажатой левой кнопке. Позволяет плавно

 

Работая с такими приложениями, пользователь может

 

 

изменять значение параметра (например громкость).

 

 

 

 

предугадать, что будет, если он выполнит то или иное

 

 

 

 

 

Полоса прокрутки (Scrollbar). Если в окне содержится так много

 

действие, например, щелкнет по какой-нибудь кнопке.

 

 

данных, что они в него не помещаются, в окне образуются

 

Простейшая дорога к дружественному программированию

 

 

полосы прокрутки, с помощью которых можно «прокручивать»

 

лежит через стандартизацию.

 

 

содержимое окна.

 

Если все программы имеют одинаковые элементы

 

 

 

 

 

 

 

 

управления, то пользователи, освоившие одну программу,

 

 

 

могут легко осваивать и другие.

 

 

 

 

Для создания пользовательского интерфейса современных

 

 

 

Windows – приложений используются выше

 

 

 

 

перечисленные компоненты - объекты Windows.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

21

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

22

Кафедра

Объектно-ориентированное

 

Кафедра

ООП

 

информатики

 

информатики

 

 

программирование (ООП)

УГАТУ

 

УГАТУ

 

 

 

 

 

Объектно-ориентированное программирование (ООП) –

Основная идея объектно-ориентированного

 

 

это методика разработки программ, в основе которой

 

 

программирования – стремление связать данные и

 

 

лежит понятие объекта, т.е. главной отправной

 

 

 

 

обрабатывающие их подпрограммы в единое целое –

 

точкой при проектировании программы является

 

 

 

объект.

 

 

 

объект, а не процедура, не действие.

 

 

 

 

 

 

 

 

Задача, решаемая с использованием методики ООП,

 

ООП можно рассматривать как модульное

 

 

программирование нового уровня, когда вместо

 

 

описывается в терминах объектов и операций над

 

 

 

 

случайного, механического объединения подпрограмм

 

ними. Программа при таком подходе представляет

 

 

 

и данных акцент делается на их смысловую связь.

 

 

собой набор объектов и связей между ними.

 

 

 

 

 

 

 

Программа, состоящая из отдельных объектов,

 

Преимущества ООП в полной мере проявляются при

 

 

разработке сложных программ.

 

 

отлично приспособлена к реагированию на

 

 

 

 

 

 

 

 

события, происходящие в ОС.

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

23

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

24

Кафедра

 

Классы объектов

 

Кафедра

 

Классы объектов

 

информатики

 

информатики

 

 

 

УГАТУ

 

 

УГАТУ

Основополагающим понятием в объектно-

Каждый конкретный класс имеет свои особенности

 

ориентированном программировании

 

 

поведения и характеристики, определяющие этот

 

 

 

класс.

 

 

 

 

 

 

 

является класс.

 

Классы имеют иерархическую структуру. Наивысший

 

 

 

 

 

 

 

 

 

 

 

уровень структуры – самый общий и самый простой,

Класс (class) – это структура, которая

 

 

каждый последующий уровень более специфический

 

 

и менее общий.

 

объединяет данные и механизмы их

 

Если характеристика уже однажды определена для

 

обработки.

 

 

более высокого уровня, то все уровни,

 

 

 

 

 

 

расположенные ниже имеют ту же характеристику.

 

 

 

 

 

 

Таким образом, классы-наследники могут

 

 

 

 

 

 

наследовать характеристики классов-родителей.

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

25

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

26

Кафедра

 

Классы объектов

 

Кафедра

 

Классы объектов

 

информатики

 

информатики

 

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

Класс в ООП выступает в качестве объектного типа

 

Экземпляры класса могут иметь отличающиеся

 

 

данных, а объект – это конкретный экземпляр

 

 

значения свойств и операций, которые можно

 

 

класса.

 

 

выполнять с ними.

 

Названия всех классов, используемых, например, в

 

 

 

 

 

 

Например, файловая система компьютера может

 

Delphi (Lazarus), в соответствии с принятыми

 

 

содержать сотни и тысячи файлов. Все файлы

 

соглашениями о присвоении имен, начинаются с

 

 

 

английской буквы T (от слова «Туре» – «тип»),

 

 

обладают одним и тем же набором свойств

 

 

 

 

например, Tform – класс форм, TButton – класс

 

 

(имя, положение в файловой системе и др.) и

 

 

 

 

командных кнопок.

 

 

операций (переименование, перемещение или

 

 

 

 

 

 

 

 

 

копирование и др.) и образуют класс объектов

 

Каждый объект класса в ООП обладает набором

 

 

Файлы.

 

 

 

 

свойств, методов (алгоритмов их обработки) , а

 

 

 

 

 

 

 

 

 

 

также событий, на которые он может реагировать.

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

27

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

28

Кафедра

 

Свойства (Properties)

 

Кафедра

Методы (Methods)

 

информатики

 

информатики

 

 

 

УГАТУ

 

УГАТУ

 

 

 

 

 

Метод (Method) – это объявленная в классе функция или

Свойства – параметры объекта, которые определяют

 

процедура, которая используется для работы с полями и

внешний вид и поведение объекта, выделяют

 

свойствами.В отличие от обычных подпрограмм метод

 

обрабатывает поля именно того объекта, который вызвал

уникальные особенности каждого экземпляра

 

 

метод. Поэтому обрабатываться будут данные именно

класса. К ним относятся, например, имя, значение,

 

 

того объекта, который вызвал метод.

 

цвет, размер и др.

 

 

 

 

 

 

Состояние – совокупность всех свойств данного

 

Метод – это некоторое действие (операция), которое можно

 

выполнять над данным объектом, или команда, которую

объекта.

 

 

 

 

может выполнять объект. В результате этого действия в

Для обращения к свойствам объекта используются

 

объекте что-нибудь меняется (например, местоположение,

 

цвет, значение поля и др.).

 

составные имена, содержащие имя объекта в качестве

Для каждого класса объектов имеется свой перечень

 

префикса (перед точкой):

 

 

 

методов, которые можно к нему применить или которые он

 

 

 

 

 

<Имя объекта>.<Имя поля>:= <Выражение>

 

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

 

 

 

 

 

 

экрана, на объекте можно что-нибудь напечатать и т.д.

Кафедра

 

 

Методы (Methods)

 

Кафедра

События (Events)

 

информатики

 

 

информатики

 

 

 

 

УГАТУ

 

УГАТУ

Доступ к методам, как и к полям, возможен с помощью

 

События – сигналы, формируемые внешней средой, на

 

 

которые объект должен отреагировать

 

 

составных имен, содержащих имя объекта в качестве

 

 

соответствующим образом.

 

 

префикса:

 

 

 

 

 

 

 

 

 

<Имя объекта>.<Имя метода> [ (<Список параметров>) ] ;

События наступают в результате:

 

- каких-либо действий пользователя (перемещен курсора,

 

 

 

 

 

 

 

 

 

 

нажата кнопка мыши или клавиша на клавиатуре),

 

Согласно принципам ООП (рассмотрим далее),

 

- работы аппаратуры компьютера (например, сбой или

 

 

неисправность),

 

обращаться к свойствам класса можно только через

 

 

 

- работы программ (например, возникновение ошибок:

 

его методы.

 

 

 

 

 

деление на нуль, вычисление квадратного корня из

 

 

 

 

 

 

 

 

 

 

 

 

отрицательного числа и др.) и т.д.

 

Примечание. Некоторые методы могут вызываться и

 

- работы самих объектов и т.д.

 

 

без создания объекта, это – методы класса.

 

При наступлении события генерируется сообщение

 

 

 

 

 

 

 

 

 

 

 

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

32

Кафедра

События (Events)

 

Кафедра

События (Events)

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

При возникновении события и сообщения о нем

 

 

 

 

производится его обработка с помощью обработчика

 

Cреда Windows и написанные для нее программы

 

событий.

 

управляются событиями. Таких событий в ОС сотни,

Как правило, обработка события приводит к изменению

 

и написать программу для Windows – значит

 

свойств объекта.

 

определить и описать реакцию на те из них, которые

Обработчики событий могут обращаться к методам и

 

могут возникнуть при работе с этой программой.

 

свойствам объекта.

 

 

 

 

Для каждого конкретного объекта определено множество

 

Типовых событий, используемых при создании

 

событий, на которые он может реагировать.

 

 

 

приложений при объектно-ориетированном подходе к

Соответственно, для конкретного объекта могут быть

 

 

программированию значительно меньше, чем в

 

определены обработчики событий, которые и определяют

 

операционной среде Windows.

 

реакцию данного объекта на событие. Например, можно

 

определить реакцию на событие OnClick - нажатие на

 

 

 

 

клавишу мыши или DoubleClick - двойной щелчок.

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

33

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

34

Кафедра

Основные принципы ООП

 

Кафедра

Инкапсуляция

 

информатики

УГАТУ

информатики

УГАТУ

 

 

 

Инкапсуляция – связывание данных с обрабатывающими

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

 

эти данные подпрограммами в единое целое – объект.

 

При этом внутренние детали объекта могут быть скрыты

базируется на трех основных принципах:

 

 

(encapsulation – герметизация).

 

-

инкапсуляция,

 

 

 

 

 

 

-

наследование

 

Доступ к изменению свойств осуществляется только с

 

-

полиморфизм.

 

помощью методов, присущих данному классу объектов.

 

 

 

Если есть метод, то данное свойство данного объекта

Программа, построенная по этим принципам, есть

 

можно изменить, нет метода – нельзя.

 

 

 

 

 

совокупность объектов и способов их

 

Для обеспечения инкапсуляции класс не должен

 

взаимодействия, при этом обмен информацией между

 

позволять прямого доступа к своим данным.

 

объектами происходит посредством сообщений.

 

 

 

Методы как бы «окружают» свойства объекта, говорят, что

 

 

 

 

 

 

свойства «инкапсулированы» в объект.

 

Кафедра

Наследование

 

Кафедра

Полиморфизм

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

Наследование (Inheriting) означает, что если надо

 

Полиморфизм (имеющий много форм). К объектам разных

 

классов можно применять один и тот же метод, но

 

создать новый класс, лишь немного отличающийся от

 

действовать этот метод для разных объектов может по-

имеющегося, то нет необходимости в переписывании

разному.

 

 

уже существующих полей и методов.

 

 

 

 

 

 

 

Имеющийся класс называют предком или родительским

Например, к большинству объектов в Windows и в MSOffice

можно применять одни и те же методы: копирование,

 

классом, новый класс называют потомком или

 

 

 

перемещение, переименование, удаление и т.п. Однако,

дочерним классом.

 

 

механизмы реализации этих методов для разных

 

 

 

 

 

Наследование определяет отношение между классами:

классов (файл в Windows и документ Word)

 

объекты класса-наследника обладают всеми

 

неодинаковы.

 

свойствами и методами объектов класса-родителя.

Полиморфизм – возможность использования одних и тех

В класс-потомок можно добавить новые поля, методы и

же методов для объектов разных классов, но

 

свойства.

 

 

 

 

 

реализация этих методов может быть индивидуальной

 

 

 

для каждого класса.

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

37

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

38

Кафедра

Полиморфизм

 

Кафедра

 

 

информатики

 

информатикиСобытийный механизм управления

 

УГАТУ

 

 

УГАТУ

 

 

 

В соответствии с тем, что для каждого объекта в опреционной системе

 

Полиморфизм – это свойство классов решать схожие по

определен перечень относящихся к нему событий, реакцию на событие

при создании приложений под Windows можно запрограммировать, т.е.

смыслу проблемы разными способами. Другими

 

написать свои процедуры обработки событий или по-другому

 

словами: полиморфизм – это способность объектов

 

событийные процедуры.

 

 

 

 

 

выбирать внутреннюю процедуру (метод), на основе

 

Для этого, сначала выбирают объект – элемент управления

 

 

пользовательского интерфейса, для которого будет записана программа

данных, принятых в сообщении. Это свойство дает

 

 

его действий. Далее вызывают список событий для выбранного объекта,

возможность называть разные алгоритмические

 

 

при совершении которых над объектом будет выполняться записанная

действия одним именем.

 

программа, и выбирают подходящее событие.

 

Каждый объект может реагировать по-своему на одно и

 

В заголовке каждой событийной процедуры указывается имя объекта, для

 

которого написана процедура и название выбранного события, в скобках

то же сообщение. Напримep, команда Print будет по-

 

 

после имени процедуры записываются ее параметры, которые могут и

разному воспринята черно-белым или лазерным

 

отсутствовать.

 

 

принтером.

 

 

В событийной процедуре может участвовать несколько объектов. Например,

 

 

 

само событие происходит с первым объектом, в результате второй

 

 

 

 

объект изменяет значение своего свойства, а третий – реализует какой-

 

 

 

либо метод.

 

 

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