Первый взгляд

Сергей Бобровский

Петербургская фирма Lanck (www.lanck.ru) предоставила редакции PC Week/RE для ознакомления визуальный конструктор Windows-приложений “Сценарий-W”, созданный сотрудниками Lanck и институтом имитационных технологий из Петербурга. “Сценарий-W” предназначен для разработки программ для Windows 3.x/95/NT и ориентирован преимущественно на пользователей ПК, слабо знакомых с программированием.

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

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

Для обработки данных и управления ходом выполнения программы служат элементы. Они сгруппированы по типам (группам функций) в базовую и системную библиотеки. Типами элементов могут быть “Строка. Выделение подстроки”, “Ввод. Получение положения указателя мыши”, “Системные операции. Анимация двух растровых изображений по траекториям” и др.

Допускается создание собственных проблемно-ориентированных библиотек авторских классов объектов и авторских типов элементов для любых областей деятельности.

Процесс сценаризации заключается в добавлении к текущей программе новых объектов и элементов (они представлены на экране пиктограммами с уникальными именами), их модификации и проектировании логики программы путем соединения элементов между собой с помощью стрелок - элементы имеют один вход и один или два выхода (обработка данных или условное ветвление). Для элементов можно задать параметры и начальные значения, которые устанавливаются в специальном “Дизайнере”.

В “Сценарии-W 2.2” насчитывается 455 типов элементов, в том числе системные вызовы Windows и возможность подключения DLL. Конструктор позволяет быстро реализовать рутинные действия, на которые при обычном программировании тратится много времени. Например, организовать сложную анимацию, обработать щелчок мыши. Структура программы не событийно-ориентированная (как в обычных Windows-приложениях), а линейная (как DOS-программы), что облегчает процесс сценаризации для людей, незнакомых с принципами внутренней работы ОС, и позволяет создавать приложения, способные отслеживать состояние объектов управления в реальном масштабе времени. Правда, часто логика работы программы значительно усложняется именно из-за ее линейной структуры.

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

“Сценарий-W” идеально подходит для написания обучающих программ, справочных систем, презентаций, компьютерных игр. С его помощью можно быстро “нарисовать” относительно небольшие программы, а при определенном навыке - и более крупные приложения. Неплохо бы в следующие версии конструктора включить наборы картинок, звуков. Сейчас готовятся к выпуску конструкторы игровых, тестовых, учебных программ.

Можно пожелать авторам “Сценария” добавить в свою систему новый класс объектов “Таблица” для работы с СУБД черед ODBC, что сразу сделает этот продукт полноценным средством создания бизнес-приложений.

К недостаткам системы надо отнести ее устаревший, “16-разрядный” Windows-интерфейс. Желательно также более простое руководство, ориентированное не на программиста, а на обычного пользователя. Сейчас в “Сценарий-W” входит справочная документация по типам элементов и классам объектов и довольно сухое описание, которому явно не хватает хороших примеров и иллюстраций.

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

Тем не менее “Сценарий-W” вполне может использоваться (и используется) профессиональными разработчиками. Немаловажно, что созданные с помощью конструктора программы можно распространять как самостоятельное EXE-приложение. Пользователям ПК, которые не умеют программировать, но часто испытывают потребность в создании небольших приложений для своей предметной области, лучшего решения, чем “Сценарий-W”, не найти.

Телефоны фирмы Lanck: (095) 234-0012, (812) 316-3723.

Версия для печати