Клиентские сценарии и приложения
Краткая характеристика VBScript
Visual Basic Scripting Edition (обычно просто VBScript) — сценарный язык программирования, интерпретируемый компонентом Windows Script Host. Он широко используется при создании скриптов в операционных системах семейства Microsoft Windows.
Язык был создан компанией Microsoft как замена устаревшему пакетному языку, интерпретируемому приложением command.com. Синтаксис VBScript является упрощенной версией синтаксиса языка Visual Basic.
Сценарии на языке VBScript чаще всего используются в следующих областях, использующих программные продукты Microsoft:
- автоматизация администрирования систем Windows;
- серверный программный код в страницах ASP;
- клиентские сценарии в браузере Internet Explorer.
Java-апплеты
Java-апплет - это программа, написанная на языке Java и откомпилированная в байт-код. Выполнется в браузере с использованием виртуальной Java-машины ( JVM ). Апплеты используются для предоставления интерактивных возможностей веб-приложений, которые не возможны в HTML. Так как байт-код Java платформо-независим, то Java-апплеты могут выполняться браузерами на многих операционных платформах.
Java-сервлеты являются серверными приложениями, но они отличаются от апплетов языком, функциями и другими характеристиками.
Предназначены Java-апплеты для выполнения в безопасной среде с целью предотвращения их доступа к локальным ресурсам клиентского компьютера.
Код апплета загружается с веб-сервера, и браузер
- либо вставляет апплет в веб-страницу;
- либо открывает отдельное окно с собственным пользовательским интерфейсом апплета.
Апплет может быть внедрен в веб-страницу с помощью использования HTML тэга <applet>, или (что рекомендуется) тэга <object>.
Можно назвать следующие преимущества Java-апплетов:
- работают практически на большинстве операционных платформ;
- поддерживаются большинством браузеров;
- кэшируются в большинстве браузеров, что существенно ускоряет их загрузку при возвращении на веб-страницу;
- после первого запуска апплета, когда Java-машина уже выполняется и быстро запускается, выполнение апплетов происходит существенно быстрее;
- загружаются со скоростью, сопоставимой с програмами на других компилируемых языках, например C++, но во много раз быстрее чем на JavaScript.
При этом у Java-апплетов имеются и недостатки:
- требуется установка Java-расширения, которые доступны по умолчанию не во всех браузерах;
- проблемы реализации Java-расширений для 64-разрядных процессоров;
- не могут запускаться до первой загрузки виртуальной Java-машины, что может занимать значительное время;
- разработка пользовательского интерфейса с использованием апплетов является более сложной задачей по сравнению с HTML;
- не имеют прямого доступа к локальным ресурсам клиентского компьютера;
- некоторые апплеты привязаны к использованию определенной среды времени выполнения Java ( JRE ).
ActionScript – общая характеристика
ActionScript — объектно-ориентированный язык программирования, один из диалектов EcmaScript, который добавляет интерактивность, обработку данных и многое другое в содержимое Flash-приложений. ActionScript исполняется виртуальной машиной (ActionScript Virtual Machine), которая является составной частью приложения Flash Player. ActionScript компилируется в байткод, который включается в SWF -файл.
SWF -файлы исполняются Flash Player. Сам Flash Player существует в виде плагина к веб-браузеру, а также как самостоятельное исполняемое приложение. Во втором случае возможно создание исполняемых exe -файлов, когда swf -файл включается во Flash Player.
С помощью ActionScript можно создавать интерактивные мультимедиа-приложения, игры, веб-сайты и многое другое.
XAML и Microsoft Silverlight
XAML (eXtensible Application Markup Language) - язык интерфейсов платформы Windows Vista.
Модель приложений Vista включает объект Application. Его набор свойств, методов и событий позволяет объединять веб-документы в связанное приложение. Объект Application контролирует выполнение программы и генерирует события для пользовательского кода. Документы приложения создаются с помощью языка XAML, который описывает, прежде всего, пользовательский интерфейс. Логика приложения управляется процедурным кодом (С#, VB и др.). XAML включает основные четыре категории элементов: панели, элементы управления, элементы, связанные с документом и графические фигуры.
Microsoft Silverlight является официальным названием основанной на XML и .NET технологии под кодовым именем WPF/E (Windows Presentation Foundation Everywhere), являющейся альтернативной Adobe Flash. Представляет собой подмножество Windows Presentation Foundation, в котором реализованы векторная графика, анимация и средства воспроизведения видео. В версии 1.1 включает в себя полную версию .NET CLR - называемую CoreCLR, что позволит разрабатывать Silverlight приложения на любом из языков .NET. Silverlight v.1.0 содержит подключаемый модуль браузера для обработки XAML и кодеки для воспроизведения мультимедийного содержимого в форматах WMV, WMA и MP3.
Microsoft Silverlight представляет браузеру внутреннюю модель DOM, управляемую из JavaScript кода. Поскольку язык XAML основан на XML, то документ, определяющий загружаемый клиенту пользовательский интерфейс - текстовый и потому вполне пригоден для индексирования поисковыми системами. Используя модель DOM, JavaScript может динамически обновлять содержимое Silverlight, аналогично DHTML.
Также можно вызывать методы управления презентацией (запуска анимации или приостановки воспроизведения видео, например).
Silverlight -приложение начинается с вызова объекта Silverlight из HTML страницы, загружающего XAML файл. XAML файл содержит объект Canvas, выступающий подложкой для других элементов. Объекты XAML способны генерировать события, перехватываемые из JavaScript.
Понятие о DOM
DOM (Document Object Model) - объектная модель документа. Это независящий от платформы и языка программный интерфейс, позволяющий программам получать доступ к содержимому документов, а также изменять содержимое, структуру и вид документов.
В рамках DOM любой документ представляется в виде дерева узлов. Каждый узел представляет собой элемент, атрибут, текстовый, графический или любой другой объект. Узлы между собой находятся в отношении "родитель-потомок".
Изначально различные браузеры имели собственные модели DOM, не совместимые с остальными. Для того, чтобы обеспечить взаимную и обратную совместимость, консорциум W3C классифицировал эту модель по уровням, для каждого из которых была создана своя спецификация. Все эти спецификации объединены в общую группу, носящую название W3C DOM:
- Уровень 0. Включает в себя все специфические модели DOM, которые существовали до появления Уровня 1, например document.images, document.forms. Эти модели формально не являются спецификациями DOM, опубликованными W3C, а скорее отражают то, что существовало до начала процесса стандартизации.
- Уровень 1. Базовые функциональные возможности DOM (HTML и XML) в документах, такие как получение дерева узлов документа, возможность изменять и добавлять данные.
- Уровень 2. Поддержка пространства имен XML, filtered views и событий.
- Уровень 3. Состоит из шести различных спецификаций:
- DOM Level 3 Core ;
- DOM Level 3 Load and Save ;
- DOM Level 3 XPath ;
- DOM Level 3 Views and Formatting ;
- Level 3 Requirements ;
- DOM Level 3 Validation.
Текущим уровнем спецификаций DOM является Уровень 2, но, тем не менее, некоторые части спецификаций Уровня 3 являются рекомендуемыми W3C.
DHTML
Динамический HTML или DHTML представляет собой набор технологий, которые совместно позволяют создавать интерактивные веб-сайты на основе статического языка разметки ( HTML ), языка создания клиентских сценариев ( JavaScript ), языка описания представления документа ( CSS ) и документной объектной модели ( DOM ).
DHTML позволяет сценарным языкам изменять переменные языка описания представления документа, таким образом, изменяя вид и поведение прежде статического содержимого HTML документа уже после полной загрузки документа и в процессе просмотра его пользователем. Таким образом, динамичность, привносимая DHTML, проявляет себя в процессе просмотра страницы, но не имеет никакого отношения к генерации содержимого страницы при каждой ее загрузке.
В противоположность DHTML, динамически генерируемая страница - более широкое понятие, подразумевающее, например генерацию содержимого веб-страницы индивидуально для каждого пользователя. Это достигается созданием страниц с помощью клиентских или серверных (например, на PHP или Perl ) сценариев.
Регулярные выражения
Регулярные выражения — система поиска текстовых фрагментов в электронных документах, основанная на специальной системе записи образцов для поиска. Образец, задающий правило поиска, называется " шаблоном ". Применение регулярных выражений принципиально преобразило технологии электронной обработки текстов.
Многие языки программирования уже поддерживают регулярные выражения для работы со строками либо в виде отдельных функций, либо имеют уже встроенный в их синтаксис механизм обработки регулярных выражений, например, Perl и Tcl. Популяризации понятия регулярных выражений способствовали утилиты, поставляемые в дистрибутивах Unix.
С помощью регулярных выражений можно задавать структуру искомого шаблона и его позицию внутри строки (например, в начале или в конце строки, на границе или не на границе слова).
При описании структуры шаблона используются:
- гибкая система квантификаторов (операторов повторения);
- операторы описания наборов символов и их типа (числовые, нечисловые, специальные).