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

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

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

Кафедра

Тема

 

Кафедра

 

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

 

информатики

 

информатики

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

 

 

 

 

 

 

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

 

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

 

методов и средств, используемых в процессе

 

 

 

 

 

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

 

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

 

 

 

 

 

 

 

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

 

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

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

 

 

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

2

Кафедра

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

 

Кафедра

 

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

 

информатики

 

информатики

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

 

«Стихийное» программирование. Первый этап развития

 

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

 

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

 

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

 

 

 

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

 

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

 

 

 

программ.

 

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

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

 

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

 

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

 

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

 

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

 

 

 

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

 

 

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

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

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

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

 

 

 

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

3

 

 

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

4

Кафедра

 

Кафедра

 

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

 

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

 

УГАТУ

 

УГАТУ

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

 

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

 

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

 

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

данные.

 

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

 

 

 

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

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

 

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

 

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

 

подпрограмм.

 

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

 

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

 

 

 

 

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

 

 

 

осуществляется «сверху вниз» и подразумевает реализацию

 

 

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

 

 

 

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

 

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

 

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

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

 

 

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

 

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

 

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

 

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

 

 

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

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

 

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

 

 

 

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

5

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

6

Кафедра

 

Кафедра

 

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

 

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

 

УГАТУ

 

УГАТУ

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

 

Связи между

 

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

 

 

 

модулями при

 

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

 

 

 

использовании данной

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

 

 

технологии

 

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

 

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

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

 

специальный

 

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

 

интерфейс, в то время

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

 

как доступ к

 

 

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

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

 

 

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

 

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

 

 

 

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

 

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

некоторым

 

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

 

«внутренним»

 

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

переменным)

 

принтер и т.п.

 

запрещен.

 

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

7

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

8

Кафедра

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

 

Кафедра

 

 

информатики

 

информатики

 

 

 

 

 

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

 

 

 

УГАТУ

 

 

УГАТУ

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

 

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

 

 

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

 

 

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

 

 

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

 

 

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

 

-

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

 

 

 

 

 

 

-

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

 

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

 

-

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

 

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

 

 

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

 

 

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

 

 

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

 

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

 

 

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

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

 

- Цикл – «Дo»: повторение действий цикла до выполнения заданного

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

 

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

 

 

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

 

 

 

действий в цикле;

 

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

 

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

 

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

 

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

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

 

 

 

 

 

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

9

Информатика

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

10

Кафедра

 

 

Кафедра

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

 

информатики

 

 

информатики

 

 

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

 

 

 

 

 

УГАТУ

 

 

УГАТУ

Основным достоинством объектно-

 

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

 

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

 

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

 

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

 

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

 

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

 

 

 

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

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

 

 

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

 

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

 

 

 

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

 

способы организации программ,

 

 

основанные на механизмах

 

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

 

наследования, полиморфизма,

 

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

 

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

 

 

 

 

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

 

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

 

сравнительно простых.

 

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

 

 

 

 

 

 

 

 

 

 

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

 

 

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

 

их в двоичном виде (без исходных текстов) и

 

 

 

 

 

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

 

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

 

поддерживающем соответствующую технологию.

 

Java

 

 

 

 

 

 

 

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

11

Информатика

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

12

Кафедра

 

 

Кафедра

 

Объекты Windows

 

информатики

 

информатики

 

 

 

УГАТУ

 

 

УГАТУ

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

 

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

 

 

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

 

 

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

 

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

 

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

 

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

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

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

 

 

 

 

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

 

 

 

с разными объектами.

 

 

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

13

 

Информатика

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

14

Кафедра

 

 

Кафедра

 

 

 

информатики

 

информатики

 

 

 

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

УГАТУ

 

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

УГАТУ

 

 

 

 

 

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

 

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

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

 

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

 

информации.

 

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

 

 

 

 

 

 

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

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

 

так много элементов управления, что они в

 

 

 

 

 

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

 

нем не помещаются. В таких случаях окно

 

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

 

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

 

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

 

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

 

 

страницу диалогового окна, надо просто

 

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

 

 

 

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

 

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

 

 

 

 

 

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

 

 

 

 

(эти пункты имеют названия, которые оканчиваются

 

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

многоточием).

 

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

 

 

 

 

управляет, но помогает пользователю управлять программой.

 

 

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

15

 

Информатика

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

16

Кафедра

 

 

 

 

Кафедра

 

 

 

 

информатики

 

 

 

информатики

 

 

 

 

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

УГАТУ

 

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

УГАТУ

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

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

 

 

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

 

документов.

 

 

 

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

 

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

 

 

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

 

выполнение программы. Открыть или закрыть окно

 

 

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

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

 

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

или завершить ее. Эти окна можно перемещать, сворачивать

 

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

 

и разворачивать.

 

 

 

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

 

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

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

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

 

 

 

 

 

 

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

 

 

 

 

 

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

 

 

 

 

 

 

также часто полосы прокрутки и линейки.

 

 

Информатика

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

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

17

 

Информатика

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

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

18

Кафедра

 

 

 

 

Кафедра

 

 

 

 

информатики

 

 

 

информатики

 

 

 

 

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

УГАТУ

 

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

УГАТУ

 

 

 

 

 

 

 

 

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

 

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

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

 

 

(галочка – флажок включен). Они позволяют пользователю делать

 

 

 

 

 

 

 

 

 

 

 

 

нужный выбор параметров.

 

 

 

 

 

 

 

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

 

 

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

 

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

 

 

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

 

 

вариантов из одного списка.

 

 

 

 

 

 

 

 

 

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

 

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

 

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

 

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

 

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

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

 

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

 

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

 

для компактности.

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

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

Контекстное меню. Вызывается правой кнопкой мыши, содержит

 

кнопками счетчика. Это пара кнопок в виде стрелок. Щелчок по верхней

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

кнопке увеличивает, а по нижней – уменьшает значение.

 

 

щелчок.

 

 

 

 

 

 

 

 

 

 

 

 

Информатика

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

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

19

 

Информатика

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

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

20

Кафедра

 

 

Кафедра

Объекты Windows

 

информатики

 

информатики

 

 

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

УГАТУ

 

УГАТУ

Движок (ползунок) (Slider). Позволяет плавно изменять значение

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

 

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

 

параметра (например громкость) при нажатой левой кнопке

 

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

 

 

 

 

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

 

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

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

 

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

 

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

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

 

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

 

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

 

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

 

 

 

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

 

 

 

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

компоненты – объекты Windows.

 

 

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

21

Информатика

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

22

Кафедра

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

 

Кафедра

ООП

 

информатики

 

информатики

 

 

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

УГАТУ

 

УГАТУ

 

 

 

 

 

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

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

 

 

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

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

 

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

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

 

 

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

целое – объект.

 

 

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

 

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

 

 

 

 

 

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

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

 

 

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

 

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

 

 

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

 

подпрограмм и данных, акцент делается на их

 

 

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

 

 

 

 

смысловую связь.

 

 

 

 

 

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

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

 

 

приспособлена к реагированию на события,

 

 

 

 

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

 

 

происходящие в ОС.

 

 

 

 

 

 

 

 

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

23

Информатика

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

24

Кафедра

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

 

Кафедра

 

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

 

информатики

 

информатики

 

 

УГАТУ

 

 

УГАТУ

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

 

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

 

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

 

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

 

 

класс.

 

класс.

 

 

 

 

 

 

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

 

 

 

 

 

 

Класс (class) – это структура, которая объединяет

 

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

 

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

данные и механизмы их обработки.

 

 

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

 

 

 

 

 

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

 

Объект – это конкретный экземпляр класса

 

 

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

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

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

 

 

Информатика

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

25

 

 

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

26

Кафедра

 

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

 

Кафедра

 

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

 

информатики

 

 

информатики

 

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

Экземпляры класса (объекты) могут иметь

 

 

 

 

 

отличающиеся значения свойств и операций,

 

 

 

 

 

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

 

 

 

 

 

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

 

 

 

 

 

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

 

 

 

 

 

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

 

 

 

 

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

 

 

 

 

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

 

 

 

 

и др.) и образуют класс объектов Файлы.

 

 

Информатика

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

27

 

 

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

28

Кафедра

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

 

Кафедра

 

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

 

информатики

 

информатики

 

 

УГАТУ

 

 

УГАТУ

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

 

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

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

 

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

 

 

 

 

 

 

 

 

 

 

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

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

 

 

К ним относятся, например, имя, значение, цвет,

 

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

 

размер и др.

 

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

 

 

 

 

 

 

 

 

 

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

 

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

 

 

объекта.

 

 

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

 

 

 

 

 

 

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

 

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

 

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

 

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

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

 

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

 

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

 

 

 

 

.

 

 

 

 

<Имя объекта> <Имя свойства>:= <Выражение>

 

Информатика

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

29

 

 

Информатика

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

30

Кафедра

Методы объектов

 

Кафедра

 

 

Методы объектов

 

информатики

 

информатики

 

 

 

УГАТУ

 

 

 

УГАТУ

 

 

 

 

 

 

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

Доступ к методам, как и к свойствам, возможен с

 

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

 

 

 

 

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

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

 

 

качестве префикса:

 

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

 

 

 

 

 

 

 

 

 

вызвал этот метод.

 

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

 

 

 

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

 

 

 

 

 

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

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

 

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

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

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

методы.

 

 

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

 

 

 

 

 

 

 

 

 

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

 

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

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

 

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

 

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

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

Информатика

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

31

 

 

Информатика

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

32

Кафедра

События (Events)

 

Кафедра

События (Events)

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

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

 

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

которые объект должен отреагировать соответствующим

его обработка с помощью обработчика событий.

 

образом.

 

 

 

 

 

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

 

 

 

 

 

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

 

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

 

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

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

 

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

 

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

 

 

 

 

 

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

 

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

 

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

 

 

 

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

 

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

 

 

 

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

 

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

 

 

 

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

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

 

 

реакцию данного объекта на событие.

 

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

 

 

 

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

 

 

 

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

 

нажатие на клавишу мыши или DoubleClick - двойной

 

 

 

 

щелчок.

 

Информатика

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

33

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

34

Кафедра

События (Events)

 

Кафедра

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

 

информатики

УГАТУ

информатики

УГАТУ

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

 

 

 

 

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

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

 

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

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

 

и описать реакцию на те из них, которые могут

 

-

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

 

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

 

-

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

 

 

 

 

 

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

 

-

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

 

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

 

 

 

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

 

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

 

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

 

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

 

 

 

 

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

 

 

 

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

 

Информатика

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

35

 

 

 

Кафедра

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

 

Кафедра

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

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

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

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

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

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

 

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

 

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

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

 

 

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

 

 

 

 

 

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

 

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

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

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

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

классом.

 

 

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

 

 

 

 

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

 

 

 

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

 

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

 

 

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

 

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

 

 

 

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

 

 

 

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

свойства.

 

 

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

 

 

 

 

 

 

 

Информатика

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

38

Кафедра

Полиморфизм

 

Кафедра

Полиморфизм

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

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

 

 

 

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

 

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

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

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

 

разному.

 

 

 

 

 

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

 

 

 

 

 

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

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

 

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

 

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

 

 

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

 

 

то же сообщение.

 

 

 

 

 

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

 

 

 

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

 

 

 

этих методов может быть индивидуальной для каждого

 

 

 

класса.

 

 

 

 

 

Информатика

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

39