Читаем Журнал «Компьютерра» № 13 от 04 апреля 2006 года полностью

Следует отметить, что роли могут модифицироваться разработчиком каждого отдельного приложения. Если потребуется сертификация некой линии поведения, то здесь возможно использование уникального ключа (Unique ID, UID). Это позволяет создавать пользовательские «коллекции» ролей, которые потом можно применять и в чужих программных проектах. Дабы обеспечить возможность повторного использования соответствующих ролей в описании Субъекта, формируется специальный раздел, который служит основой для сборки секций ролей в приложении (где можно указывать UID ролей из библиотек). В нем должна находиться информация о том, какому значению состояния соответствует данная роль, а также сведения о задержках переключения алгоритмов.

Функции, реагирующие на события и принудительно изменяющие состояние Субъекта, относятся к категории сенсоров. Эта категория функций весьма условна и выделена только для того, чтобы можно было контролировать последовательность смены внутренних состояний объекта, например — при отладке приложения. Так как тип рассматриваемых приложений предназначен в первую очередь для работы в режиме реального времени, то рационально использовать наиболее надежный и предсказуемый способ организации выполнения программы — циклический.

Проснись — и пой!

Активность Субъекта определяется частотой «подключения» таймера к работе. Однако присутствие таймера во внутренней структуре Субъекта совсем не обязательно! Достаточно наличия метода (имеющего определенную структуру) обработки события от таймера. А «оживляться» этот метод может как по событию от внутреннего таймера, так и внешним вызовом.

Блок формирования состояния может понадобиться тогда, когда логика выбора состояния будет достаточно сложна (либо требуется наличие временных функций — задержек). И здесь самым подходящим языком описания алгоритма формирования состояния может служить язык из стандарта IEC 61131-3, применяемый в некоторых контроллерах. Например, для удобства описания интерфейсов СОМ-объектов был даже создан свой язык — Interface Definition Language. Однако этот момент является только предположением, поэтому говорить о нем пока рано. А вот без создания нового краткого «языка общения» между различными Субъектами, возможно, не обойтись.

Действительно, Субъектам достаточно обмениваться сообщениями о состояниях, а не сериями команд управления, как принято при управлении Объектами.

В любом случае, для формализации класса Субъекта все же понадобится разработка дополнительных спецификаций и стандартов, чтобы облегчить и систематизировать как сам процесс программирования, так и процесс использования подобных приложений в будущем.

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

в каждом Субъекте должен присутствовать как минимум один «счетчик жизни»;

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

в каждом Субъекте должна присутствовать «пустая роль» или «роль по умолчанию», которая выполняется в неопределенных состояниях либо в режиме ожидания;

алгоритм выполнения той или иной последовательности действий (роли) не должен быть вшит или «размазан» по программному коду, он должен иметь вид отдельной структурной секции программы;

вызов отдельных методов Субъекта извне допускается, но нежелателен;

в каждом Субъекте должен быть предусмотрен интерфейс обмена информацией с другими Субъектами системы;

все роли Субъекта должны быть подробно документированы в секции описания ролей.

По мере развития глобальных информационных систем и систем компьютерного моделирования реальной действительности субъектное программирование становится все более востребованным. Затраты на расширение функциональности таких систем растут в геометрической прогрессии, поэтому удешевление их разработки весьма актуально.

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

Любопытно, что упоминаемая в статье switch-технология предложена российским ученым, представителем Гавриловской школы[ Школа по теории дискретных устройств была организована членом-корреспондентом АН СССР Михаилом Александровичем Гавриловым в конце 1960-х годов] А. А. Шалыто. Она основана на применении в программировании идей теории систем управления. Автор первоначально предложил ее для алгоритмизации и программирования систем логического управления, в которых ввод входных воздействий выполняется по опросу (как, например, в программируемых логических контроллерах и других подобных задачах).

Перейти на страницу:

Все книги серии Компьютерра

Похожие книги

«Если», 2010 № 01
«Если», 2010 № 01

ПРОЗАЕвгений ГАРКУШЕВ. ЧУЖАЯ ЖИЗНЬ, ИЛИ VIS VITALISУж сколько раз твердили миру: техническое задание нужно формулировать точно.Кори ДОКТОРОУ. ВСЕ ПРОЙДЕТ…Этот монашеский орден образован бывшими сисадминами. Мышь не проскочит сквозь их сети, но вот «крот» завелся.Рик НОЙБЕ. ПОЛЕВЫЕ ИССЛЕДОВАНИЯЕдинственное, во что они верят, это удача. Для вполне безобидных жителей безымянной планеты их суеверия превыше здравого смысла, жизни, будущего.Альберт КОУДРИ. СЫЩИКПровинциальный чудак примеряет крылатку Шерлока Холмса.Евгений ЛУКИН. СЕКОНДХЕНДЖНе лучшие времена переживает баклужинский чародей. Теперь вот любимый ученик подался в политику.Тед КОСМАТКА. СЛОВА НА БУКВУ «Н»«Тупиковая ветвь» вновь рискует оказаться в тупике. Социальном.Юн Ха ЛИ. ЦИТРА БЕЗ СТРУНГармония звуков, красок, чисел — и все это для того, чтобы уничтожить противника.КОНКУРС «КОЛЛЕКЦИЯ ФАНТАЗИЙ»Представляем читателям новых авторов.ВИДЕОРЕЦЕНЗИИСтранная зависимость: фантастических фильмов снимают больше и больше, а смотреть, по сути, нечего.Аркадий ШУШПАНОВ. НЕКУДА БЕЖАТЬОни пугают, а нам не страшно!. А может, все-таки страшно? Вдруг майя были правы?Александр РОЙФЕ МУЛЬТТРАНЗИТ: КОПЕНГАГЕН — БОГОТАПродолжение обзора фантастической мультипликации «непрофильных» стран.Дмитрий БАЙКАЛОВ. В ГРЕЦИИ ВСЕ ЕСТЬ!…А также все есть и в Голливуде!РЕЦЕНЗИИВ книжный магазин лучше всего идти после ознакомления с блоком рецензий. Это сэкономит ваши время и средства.Андрей ЩЕРБАК-ЖУКОВ. КАК СТРАШНУЮ СКАЗКУ СДЕЛАЛИ БЫЛЬЮОднажды 25 известных писателей решили написать большой фантастический роман. Это было в далекие 20-е годы. Но отдельной книгой роман вышел только теперь.Андрей СКОРОБОГАТОВ. ПЛЕЕР ДЛЯ ФЭНАОдни из самых преданных поклонников фантастики — рок-музыканты. Разумеется, это не могло не проявиться в их творчестве.Вл. ГАКОВ КИМВАЛ. ЗВУЧАЩИЙПо количеству написанных книг этот писатель давно уже догнал таких рекордсменов, как Айзек Азимов и Жорж Сименон.КУРСОР«Невероятно, но факт» — так можно сказать про любую новость из мира фантастики.ПЕРСОНАЛИИБольшинство имен вам уже хорошо знакомо, но есть и свежая информация, которая вас определенно зантересует.

Альберт Коурди , Евгений Гаркушев , Евгений Лукин , Кори Доктороу , Рик Нойбе

Фантастика / Журналы, газеты / Научная Фантастика
«Если», 2003 № 09
«Если», 2003 № 09

Александр ЗОРИЧ. ТОПОРЫ И ЛОТОСЫВ каркас космической оперы плотно упакованы очень непростой вопрос, весьма неожиданное решение и совсем неоднозначные герои.Анджей ЗЕМЯНСКИЙ. АВТОБАН НАХ ПОЗНАНЬЕсли говорить о жанре, то это польский паропанк. Но очень польский…Дэвид НОРДЛИ, ЛЕД, ВОЙНА И ЯЙЦО ВСЕЛЕННОЙЧтобы понять тактику и стратегию инопланетян, необходимо учесть геофизику этого мира — кстати, вполне допустимую в рамках известных нам законов. Представьте себе планету, которая… Словом, кое-что в восприятии придется поменять местами.Жан-Пьер АНДРЕВОН. В АТАКУ!…или Бесконечная Война с точки зрения французского писателя.Дмитрий ВОЛОДИХИН. ТВЕРДЫНЯ РОЗБойцу на передовой положено самое лучшее. И фирма не мелочится!Карен ТРЕВИСС. КОЛОНИАЛЬНЫЙ ЛЕКАРЬХоть кому-то удалось остановить бойню… И знаете, что радует: самым обычным человеческим способом.Василий МИДЯНИН. NIGREDO и ALBEDOОна + Он = Зорич.ВИДЕОДРОМПризрак комикса бродит по Голливуду… Терминатор бежит от терминаторши, хотя надо бы наоборот… Знаменитый российский сценарист рассуждает о фантастике.Павел ЛАУДАНСКИЙ. ПОСЛЕ ЗАЙДЕЛЯJeszcze Polska ne zgingla!Глеб ЕЛИСЕЕВ. «ОБЛИК ОВЕЧИЙ, УМ ЧЕЛОВЕЧИЙ…»Влезть в «шкуру» инопланетянина непросто даже фантасту.ЭКСПЕРТИЗА ТЕМЫ…Фантасты же пытаются объяснить, почему.РЕЦЕНЗИИДаже во время летних отпусков рецензенты не расставались с книгами.КУРСОРЛетом в России конвентная жизнь замирает, а в странах братьев-славян бьет ключом.Сергей ПИТИРИМОВ. ФОРМА ЖИЗНИ? ФОРМА ОБЩЕНИЯ!«В связях, порочащих его, замечен не был», — готов заявить о себе каждый пятый участник опроса.АЛЬТЕРНАТИВНАЯ РЕАЛЬНОСТЬМал золотник, да дорог.Андрей СИНИЦЫН. ЧЕТВЕРОНОГИЕ СТРАДАНИЯВидно, давно критик не писал сочинений. Соскучился.Владислав ГОНЧАРОВ. НОВАЯ КАРТА РОССИИПетербург за пределами Российской Федерации?.. Опасная, между прочим, игра в нынешней политической реальности.ПЕРСОНАЛИИСплошной интернационал!

Глеб Анатольевич Елисеев , Евгений Викторович Харитонов , Журнал «Если» , Павел Лауданский , Юрий Николаевич Арабов

Фантастика / Проза / Прочее / Журналы, газеты / Газеты и журналы / Эссе
«Если», 2003 № 07
«Если», 2003 № 07

ФАНТАСТИКАЕжемесячный журналСодержание:Александр Тюрин. ЗАПАДНЯ, рассказВиталий Каплан. СВОБОДА ВЫБРАТЬ ПОЕЗД, повестьВИДЕОДРОМ*Тема--- Николай Панков. С МОНИТОРА НА ЭКРАН. И ОБРАТНО, статья*Рецензии*Хит сезона--- Дмитрий Байкалов. ВЫБОР ИЗБРАННОГО, статья*Премьера--- Дмитрий Байкалов. ГОД СИКВЕЛОВ, статьяВиталий Пищенко, Юрий Самусь. КОМПЬЮТЕРНАЯ ЛЕДИ, рассказЭдвард Лернер. ПРИСУТСТВИЕ РАЗУМА, повестьДэвид Брин. ПРОВЕРКА РЕАЛЬНОСТИ, рассказИэн Маклауд. NEVERMORE, рассказБрайан Плант. «ТОЛЬКО ЧЕЛОВЕК», рассказСалли Макбрайд. ПОТОП, рассказ«КРУГЛЫЙ СТОЛ»«ПРОШУ РАССМОТРЕТЬ…» Материал подготовила Светлана ПрокопчикВЕХИ*Вл. Гаков. СКОЛЬКО БУДЕТ ДВАЖДЫ ДВА? статьяКРУПНЫЙ ПЛАН*Владимир Борисов. ПОД МИКРОСКОПОМ, эссеРецензииКрупный планСергей Питиримов. БОГ ИЗ МАШИНЫ, статьяКир Булычёв. ПАДЧЕРИЦА ЭПОХИ (продолжение серии историко-литературных очерковЭКСПЕРТИЗА ТЕМЫОльга Елисеева, Святослав Логинов, Валентин Шахов.Статистика*Дмитрий Ватолин. МЕЖ ДВУХ МИРОВ, статьяКурсорПерсоналии Обложка Игоря Тарачкова к повести Эдварда Лернера «Присутствие разума». Иллюстрации: Е. Капустянский, В. Овчинников, А. Филиппов, И. Тарачков, О. Дунаева, А. Балдин, С. Голосов.

Виталий Иванович Пищенко , Владимир Гаков , Дмитрий Ватолин , Журнал «Если» , Иэн Маклауд , Салли Макбрайд

Фантастика / Журналы, газеты / Научная Фантастика