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

Информатизация инженерного образования (выпуск 1)

.pdf
Скачиваний:
101
Добавлен:
28.06.2014
Размер:
22.7 Mб
Скачать

Г л а в а 12. Лабораторный практикум

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

Перечисленные инструментальные системы позволяют оперативно и с умеренными усилиями разработать виртуальные лабораторные практикумы для инженерных дисциплин, но высока вероятность, что готовые системы нельзя использовать для создания ВЛП. Причинами этому могут быть высокая сложность, невозможность их использования в некоторых режимах обучения (например, при дистанционном обучении), высокая стоимость и т.п.

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

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

Содной стороны, развертывание виртуального лабораторного практикума на клиенте позволяет использовать для создания ВЛП практически любые технологии программирования, до недавнего времени такое построение приложений было единственно возможным. Преимуществом такого построения является его независимость от аппаратного и программного обеспечения, функционирующего вне компьютера, на котором выполняется ВЛП. Технологии создания локального программного обеспечения отработаны, ограничения на использование развитого графического пользовательского интерфейса, мультимедиа практически отсутствуют. Увеличение объемов жестких дисков персональных компьютеров, широкое распространение CD-ROM и DVD практически сняли ограничения на объем программных систем и используемых ими данных.

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

инастройки ВЛП.

При работе с локальными виртуальными лабораторными практикумами в условиях дисплейного класса имеются другие проблемы: в дисплейных классах с минимальными перерывами должны проводиться занятия по различным дисциплинам, так что либо на компьютерах дисплейного класса должно быть установлено и проверено на работоспособность все программное обеспечение, используемое

513

ЧА С Т Ь 3. ТЕХНОЛОГИИ ИНФОРМАТИЗАЦИИ ОБРАЗОВАНИЯ

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

Чисто локальные приложения обладают ограниченными возможностями по их управлению со стороны преподавателей, проводящих занятия. Управление их выполнением (и индивидуализация обучения) осуществляется опосредованно через обучаемого. Трудность вызывает даже раздача индивидуальных заданий: либо выбор задания должен выполняться самим обучаемым, либо оно должно быть фиксированным (одно задание на всех обучаемых), либо осуществляться с помощью датчиков случайных чисел.

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

Клиент-серверная архитектура ВЛП предполагает распределение функций лабораторного практикума между сервером, установленным либо в вузе, либо у провайдера услуг Интернет, и клиентским программным обеспечением, установленным на компьютере обучаемого.

Возможны два крайних случая:

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

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

Достоинством такого построения виртуального лабораторного практикума являются минимальные требования к развертыванию: включил компьютер, подключился к Интернет, ввел в адресной строке браузера адрес сервера или щелкнул на нем в списке Избранное, после чего можно начинать работать с ВЛП. Другое достоинство — высокая степень стандартизации: на клиенте, сервере и в сети используются стандартное программное обеспечение и протоколы взаимодействия, имеется большое число технологий и инструментальных средств, позволяющих с умеренными усилиями разрабатывать такие системы.

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

514

Г л а в а 12. Лабораторный практикум

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

Функционирование виртуального лабораторного практикума на сервере накладывает серьезные ограничения на объем передаваемых данных между сервером и клиентом, хорошим правилом является, чтобы задержка при взаимодействии клиента и сервера на наименее производительном допустимом подключении обучаемого к сети не превышала 10…15 секунд. Пусть минимальная допустимая производительность используемого подключения составляет 30 кбит/с, тогда допустимый объем данных, передаваемых между клиентом и сервером при каждом взаимодействии, не должен превышать 30…50 кб.

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

идолжны быть серьезные причины для реализации такого подхода.

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

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

515

Ч А С Т Ь 3. ТЕХНОЛОГИИ ИНФОРМАТИЗАЦИИ ОБРАЗОВАНИЯ

Studio.Net, требует минимальных дополнительных усилий. Сетевая архитектура предполагает постоянное подключение клиента к сети и взаимодействие с сервером во время выполнения лабораторной работы.

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

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

Основными инструментальными системами для создания локальных ВЛП на платформе Windows служат Borland Delphi, языком программирования в котором является диалект языка программирования Pascal. Широко используются также языки Visual Basic и C++ и инструментальная среда разработки Microsoft Visual Studio. Последняя платформа разработки не позволяет реализовать перенос ВЛП на другие платформы, в то же время программы, созданные с помощью Borland Delphi, могут быть, хотя и не непосредственно, перенесены на Linux.

Практически напрямую вопрос миграции на различные платформы решается при разработке ВЛП на Java. Java позволяет создавать не только локальное, но и клиент-серверное и сетевое программное обеспечение. Программы на Java компилируются в так называемый байт-код, который не зависит от платформы. При запуске программы на выполнение байт-код интерпретируется виртуальной машиной Java. Виртуальные машины Java имеются практически для всех широко применяемых в настоящее время платформ. За легкость переноса и компактность байт-кода приходится платить высокими требованиями к аппаратным средствам компьютеров, на которых выполняются Java-программы, особенно при использовании графических пользовательских интерфейсов. Для Java имеется большое число инструментальных сред быстрой разработки программного обеспечения, например Borland JBuilder.

Очень коротко остановимся на новой платформе программирования для Windows —.Net. Во многом эта платформа похожа на Java, в ее основе лежит промежуточный язык CLI, который также зависит от платформы, при запуске программы не интерпретируются, а докомпилируются в машинный код целевого компьютера. Использование промежуточного кода позволяет легко сочетать программный код, написанный на различных языках программирования. Microsoft в настоящее время поддерживает языки программирования C++.Net, VB.Net, J#

иC#. Имеется достаточно большое число реализаций других языков программирования, включая Perl, Python, Fortran. Платформа .Net обладает очень обширным

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

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

.Net является Visual Studio.Net. У Microsoft имеется академическая программа, позволяющая вузам, отдельным преподавателям и студентам приобретать Visual Studio.Net по приемлемым ценам (см. http://www.softline.ru).

516

Г л а в а 12. Лабораторный практикум

Borland поддерживает инструментальные интегрированные системы разработки для Delphi и нового языка программирования C# (C#Builder) на платформе .Net.

Похоже, что выход в 2006 г. следующей версии Windows.Net станет основной платформой программирования для этой операционной системы и о Win32 постепенно придется забыть. В настоящее время для исполнения приложений .Net на компьютере должна быть установлена среда выполнения, объем которой составляет 20 Мбайт. В дальнейшем среда выполнения .Net будет устанавливаться вместе с операционной системой (это уже имеет место для Windows 2003 Server).

Существенно, что .Net сообществом разработчиков программного обеспечения перенесен на Linux и различные версии UNIX (см. http://www.monoproject.com/about/index.html, а также http://go-mono.com и http://www.dotgnu.org), это позволяет надеяться, что .Net станет распространенной платформой для разработки программного обеспечения широкого назначения.

Остановимся кратко на платформах разработки серверных и клиентских частей ВЛП.

Серверная часть ВЛП должна обеспечивать следующие функции:

отображение описаний лабораторных работ;

доставку клиентских приложений на компьютер обучаемого;

формирование и передачу индивидуальных заданий;

взаимодействие между клиентской и серверной частью ВЛП во время проведения лабораторной работы, если последнее необходимо.

Основным протоколом, используемым для взаимодействия между клиентом и сервером, является HTTP — стандартный протокол Всемирной паутины, более 70 % трафика Интернета передается по этому протоколу. Других возможностей не рассматриваем по простой причине — использование других менее стандартных решений может привести к отказам работы ВЛП. Это связано с тем, что системные администраторы, обеспокоенные безопасностью своих сетей, стараются закрыть лазейки для проникновения злоумышленников и вирусов, отключая всякую экзотику. В частности, поэтому в последние годы несколько упала популярность сетевых приложений, использующих удаленные вызовы процедур, так как с ними связано несколько способов проникновения и заражения систем. Поэтому не удивляйтесь, если, используя при работе виртуального лабораторного практикума удаленные вызовы процедур, в один прекрасный момент обнаружите, что ВЛП перестал работать либо у всех, либо у отдельных пользователей.

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

Выбор программного обеспечения для создания и обеспечения работы серверной части в основном обусловливается организационными причинами, так как на web-сервере кроме ВЛП обычно функционирует большое число сайтов и других web-приложений.

В настоящее время наиболее популярными web-серверами являются бесплатно распространяемый Apache, версии которого имеются для практически всех широко используемых серверных платформ, и Microsoft Internet Information Server (IIS) для платформы Windows.

Для разработки web-приложений, работающих под управлением Apache, в основном используются PHP (http://www.php.net/), реже язык программирования

517

Ч А С Т Ь 3. ТЕХНОЛОГИИ ИНФОРМАТИЗАЦИИ ОБРАЗОВАНИЯ

Perl (http://www.activestate.com/), а также сервлеты Java и Java Server Pages (http://java.sun.com/products/jsp/). Основным достоинством перечисленных технологий является многоплатформенность — возможность работы с различными операционными системами и web-серверами.

На платформе Windows и под управлением IIS возможно использование перечисленных технологий, но дополнительно можно разрабатывать серверную часть виртуального лабораторного практикума с помощью фирменных технологий Microsoft — ASP и ASP.Net. Отметим лишь, что ASP.Net является очень мощной и развитой технологией для создания серверных web-приложений различного назначения, а использование Visual Studio.Net позволяет делать это с высокой производительностью [12.12—12.15].

Вцелом, выбор средств для написания серверной части виртуального лабораторного практикума определяется в конечном итоге вкусами и предпочтениями администратора системы, на которой предполагается ее эксплуатировать. Это не очень сложная задача, если основная функциональность лабораторных стендов сосредоточена в клиентской части, так что системный администратор является первым кандидатом на роль разработчика серверной части ВЛП, тем более ему/ей же придется эту часть эксплуатировать.

Взаключение напомним, что при проектировании серверной части ВЛП необходимо предусматривать возможность сохранения состояния ВЛП и возобновления работы в случае разрыва соединения.

На разработке клиентского программного обеспечения, использующего специализированные клиенты, останавливаться не будем.

Браузер представляет собой естественную и удобную среду для виртуальных лабораторных стендов. Действительно, описания лабораторных работ отображаются с помощью встроенных средств, а сами лабораторные стенды могут быть загружены и выполняться в контексте браузера.

Одной из весьма привлекательных возможностей создания виртуальных лабораторных стендов, функционирующих в контексте браузера Internet Explorer, являются ActiveX DLL. Это приложения Windows, которые могут быть автоматически загружены через сеть и выполняться в контексте браузера.

Создание таких программ не более сложно, чем создание обычных локальных программ, может осуществляться с помощью, например, Borland Delphi или Microsoft Visual Studio, просто необходимо учитывать различия в возбуждении событий в ActiveX DLL, функционирующих в контексте Internet Explorer, и в обычных локальных приложениях Windows. Достоинство такого подхода — широкие графические и медийные возможности, а также привычная среда программирования приложений. Недостатков данного подхода несколько, основным из которых является необходимость разрешения установки на клиентском компьютере компонентов ActiveX.

После установки эти компоненты могут делать на компьютере пользователя все, что разрешено самому пользователю, например стереть содержимое жестких дисков. ActiveX широко применяются злоумышленниками в качестве среды распространения вирусов, а также незаконного проникновения. В случае принятия решения об использовании ActiveX для создания виртуальных лабораторных стендов необходимо предусмотреть организационные меры, которые бы обеспечили безопасность компьютеров обучаемых. К этим мерам можно отнести: цифровую

518

Г л а в а 12. Лабораторный практикум

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

Другим недостатком являются большие объемы компонентов в случае применения графики и средств мультимедиа.

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

Технология апплетов Java позволяет создавать приложения, выполняющиеся в контексте практически любого браузера. Однако базовые возможности создания пользовательского интерфейса — библиотека AWT — достаточно бедны, а более современная библиотека Swing предъявляет высокие требования к аппаратным ресурсам. В апплеты Java встроены разумные средства безопасности, позволяющие обезопасить компьютеры клиентов от вредоносных программ. Java имеет встроенные средства создания повторно используемых компонентов — JavaBeans, библиотеки классов для работы с сетью, мультимедиа, трехмерной графикой. К недостаткам Java относятся высокие требования к уровню программистской подготовки разработчиков приложений.

Апплеты Java используются в качестве платформы для создания виртуальных лабораторных работ по физике, химии и биологии отечественной компанией «Физикон» (http://www.physicon.ru/).

Следующей предлагаемой платформой для создания виртуальных лабораторных стендов служит динамический HTML [12.16]. В некотором смысле динамический HTML является естественной платформой для создания клиентских webприложений, функционирующих в контексте браузера. Связано это с тем, что все элементы технологии, включая собственно HTML, используемый для описания web-документов, CSS — средства стилевого оформления документов, объектная модель документа (DOM), язык программирования JavaScript поддерживаются современными браузерами. Однако неприятность состоит в том, что поддержка рассмотренных технологий в браузерах существенно различается. Отличия имеются не только в основных, но и в точечных версиях браузеров.

Библиотеки объектов динамического HTML, а также набор виртуальных устройств, включая цифровые измерительные приборы [12.16], позволяют использовать данную платформу для создания ВЛП. Привлекательной чертой динамического HTML является его простота — лабораторные работы можно создавать при участии студентов (http://ftemk.mpei.ac.ru/auth/). К недостаткам динамического HTML следует отнести существенную зависимость от версий браузеров, а также необходимость использования растровой графики, что утяжеляет стенды виртуальных лабораторных работ. Особой беды в этом нет, так как можно организовать предварительную многопоточную загрузку используемых данных незаметно для пользователя.

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

519

Ч А С Т Ь 3. ТЕХНОЛОГИИ ИНФОРМАТИЗАЦИИ ОБРАЗОВАНИЯ

Рис. 12.39. Виртуальный лабораторный стенд, созданный с применением технологии динамического HTML

Очень интересной средой разработки клиентских web-приложений служит Curl (см. http://www.curl.com). Данная система представляет собой законченную платформу программирования, включая язык разметки документов, по мощности сопоставимый с HTML, мощный язык программирования, к сожалению, имеющий не особенно привычный для современных программистов синтаксис LISP, интегрированную среду разработки. Имеются мощные объектные библиотеки, включая впечатляющие средства для работы с трехмерной графикой, а также средства для встраивания элементов мультимедиа.

Выполнение программ осуществляется в специальном встраиваемом модуле. Встраиваемые модули объемом 20 Мб предназначены для браузеров Internet Explorer и Netscape Navigator. Краткая характеристика Curl — это прекрасная программистская платформа, разработанная сотрудниками MTI при участии Тима Бернерса-Ли, включающая в себя все, что нужно для разработки клиентских webприложений. К сожалению, разработчики Curl опоздали. Если бы они выпустили Curl не позднее 2000 г., то сейчас это была бы основная платформа для разработки клиентских web-приложений. К недостаткам Curl относится также туманная политика лицензирования платформы. Выяснить условия использования Curl для разработки и эксплуатации виртуальных лабораторных комплексов в условиях российских вузов так и не удалось.

Перейдем теперь к перспективной платформе разработки сетевых виртуальных лабораторных практикумов, которая в основном и использовалась для создания виртуальных лабораторных стендов ВЛП ЭТМ — это Macromedia Flash MX 2004

520

Г л а в а 12. Лабораторный практикум

(версия 7.01 и 7.2). Применение Flash для разработки виртуальных лабораторных практикумов рассмотрено в приложениях 12.1 и 12.2.

Macromedia Flash рассматривается как дизайнерская платформа, используемая для создания динамической векторной графики для сайтов, игр и даже мультфильмов (достаточно вспомнить сериал про Масяню). Главным достоинством Flash является ее изначальная ориентация на web-приложения. Используемые векторные графические средства позволяют создавать приложения очень малого объема (единицы-десятки килобайт, на рис. 12.40 приведен лабораторный стенд по исследованию поведения простейших клеточных автоматов, полный объем которого составляет всего 30 кб) и запускать их либо в отдельном приложении-проигрыва- теле, либо в браузере с помощью встраиваемого модуля. В настоящее время считается, что более 90 % пользовательских браузеров могут работать с Flash. В том случае, если встраиваемый модуль в браузере не установлен, он автоматически загружается и устанавливается при первом обращении к web-странице, содержащей фильм Flash.

Рис. 12.40. Виртуальный лабораторный стенд для исследования клеточных автоматов, реализующий различные варианты игры «Жизнь»

521

Ч А С Т Ь 3. ТЕХНОЛОГИИ ИНФОРМАТИЗАЦИИ ОБРАЗОВАНИЯ

Этим снимается проблема совместимости приложений, проигрываемых в различных браузерах, характерная для динамического HTML. Правда, проблема совместимости остается для различных версий Flash; например, фильмы Flash, разработанные в интегрированной среде седьмой версии, не всегда корректно функционируют в проигрывателе шестой версии, что требует контроля версии проигрывателя перед началом выполнения фильма.

Наряду с мощными дизайнерскими средствами в Flash, начиная с версии 6.0, встроены достаточно мощные средства программирования: язык ActionScript (аналог JavaScript, достаточно близкий к стандарту ECMA-262 [12.17], с расширениями, специфическими для работы с объектами Flash, звуком и мультимедиа, сетью, XML и т.п.). В седьмой версии появились новые средства для объектноориентированного программирования, напоминающие возможности Java и C#. В данной версии они встроены в качестве надстройки на уровне компилятора, транслирующего новые конструкции языка в JavaScript.

Программы на ActionScript являются интерпретируемыми: это, с одной стороны, позволяет получать программный код минимального объема, но, с другой стороны, производительность программ, написанных на ActionScript, низкая. Этим, видимо, объясняется отсутствие встроенной библиотеки для работы с трехмерной графикой. Нам так и не удалось написать на Flash удовлетворительно работающей программы для визуализации фрактальных множеств, в то время как аналогичные программы, созданные с использованием Win32, работают достаточно быстро.

Macromedia Flash MX 2004 снабжен большим числом компонентов для создания пользовательского интерфейса, включая кнопки, раскрывающиеся списки, окна и т.д. Чувствуется замах Macromedia на позиционирование Flash в качестве полноценной платформы для создания клиентских web-приложений.

Представляется, что для создания полноценной платформы программирования Macromedia предстоит перейти от интерпретации к компиляции кода (как это сделано в случае Microsoft JScript.Net), кроме того, доработать средства программирования, например в Flash имеется, по крайней мере, четыре способа обработки событий. Нужно также унифицировать средства объектного программирования.

При разработке сравнительно больших приложений (несколько тысяч строк исходного текста) возникают трудности с их отладкой — перестают выводиться трассировочные сообщения.

Большинство компонентов пользовательского интерфейса Flash написаны на ActionScript, их исходные тексты входят в комплект поставки Flash. Данное обстоятельство очень помогает при разработке виртуальных лабораторных практикумов

— поставляемая с Flash документация не слишком многословна.

Скажем несколько слов о компонентах Flash, так как эти конструкции широко применяются при создании виртуальных лабораторных практикумов. Под компонентом во Flash понимается сочетание визуальных средств (клипов Flash) и классов ActionScript, наследуемых от класса UIObject или UIComponent.

Встраивание компонентов в фильмы Flash осуществляется двояко. Во-первых, компонент может быть перетащен мышью из библиотеки компонентов в ролик в интегрированной среде разработки, а затем в ней же настроен с помощью редактора свойств. На рис. 12.41 показана настройка компонента в интегрированной среде разработки.

522