Основы языка Visual FoxPro


Реакция на события


Как мы уже отмечали, VFP реализует систему, управляемую событиями. Поговорим об этом более подробно. Первые языки программирования и первые подходы к программированию реализовали модель, управляемую данными. То есть программа чего-то там обрабатывала, и в зависимости от данных (исходных, вычисленных, сохраненных и проч.) выполняла тот или иной свой блок.

Характерным отличием такой модели является наличие алгоритма обработки, то есть четкой схемы, показывающей работу программы. К сожалению (или к счастью?) мир устроен по-другому. Динамичное развитие ситуации невозможно представить в виде законченных схем, блоков готовых решений. Мы не знаем, что случится через секунду или через минуту, мы также не знаем когда вообще что-нибудь случится. И, соответственно, мы не можем получить законченный алгоритм обработки.

Таким образом, мы приходим к понятию события. Событие это некоторое изменение окружающего нас мира. Событием может быть все что угодно, например (применимо к компьютеру), пользователь передвинул мышку, нажал кнопку, модем получил очередной байт или блок байтов, кто-то ломится к нам по сети, прошло столько-то секунд после какой-то команды и прочее.

Соответственно, суть системы управляемой событиями это описание реакции системы на определенные события. Нетрудно видеть, что алгоритма здесь нет, потому что мы не можем предсказать события. Мы можем лишь заявить следующее: "В случае того-то и того-то система поведет себя так-то и так-то". Таким образом, программирование системы заключается в описании реакции на события. Это очень важный момент в понимании подобных систем. Основное отличие от обычных подходов в том, что мы описываем только те события, которые нас интересуют, оставляя для остальных стандартную (ранее описанную) реакцию. То есть, если при создании обычных программ, Вы были обязаны описать все функциональные блоки Вашей программы, то в данном случае, Вы описываете лишь то, что отличает Вашу программу от стандартного поведения системы, как бы говоря: "А в остальном веди себя, как и прежде".




Начало  Назад  Вперед



Книжный магазин