Непейвода Н.Н. Программирование. Раздел 1

Непейвода Н.Н. Программирование. Страница 121

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

Об этом обстоятельстве, ограничивающем применимость подхода, пред­почитают умалчивать, и, как это обычно бывает в подобных ситуациях, при беглом знакомстве с соответствующими средствами могут возникнуть ни на чем не основанные ожидания с последующими разочарованиями и даже отторжением стиля, хорошо работающего на своем месте.

Примером языка, ориентированного на собственно событийноориенти­рованное программирование, может служить Perl.

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

В качестве иллюстрации этого тезиса опишем с позиций событийного стиля программирования "взаимоотношения" между синтаксическим ана­лизом и вычислениями семантики программы. Реализация этих взаимоот­ношений — обычная задача, решаемая при разработке любого транслятора. В событийном описании этой задачи в качестве событий системы естествен­но рассматривать распознавание во входном потоке (транслируемом тексте) синтаксических единиц, т. е. конструкций языка. Такое событие требует в качестве обработчика семантическую подпрограмму, связанную с распозна­ваемой конструкцией. Следовательно, выявлены два автономных процесса: синтаксический анализ, задающий генерацию событий, и семантическая об­работка, осуществляемая как последовательность вызовов семантических подпрограммреакций, упорядоченная событиями18. Коль скоро есть концеп­туальное разделение процессов, его можно воплотить в реальной системе в событийном стиле. Это решение влечет за собой следующее:

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама