На главную страницу
Информационные системы и банки данныхУправление и принятие решений в сложных системахПрикладные информационные технологииКомпьютер в учебном процессеСетевые технологииПленарные доклады Карта сервераПобедители семинараИнформацияОбщее впечатлениеВаши отзывы
Пленарные доклады - Список докладов

WEB-ТЕХНОЛОГИИ И ВОЗМОЖНОСТИ JAVA

В.В. Подбельский
(д.т.н., профессор. Республиканский исследовательский научно-консультационный центр экспертизы Миннаукн Росси)

Не пытаясь дать строгого определения World Wide Web (WWW), обратим внимание на генетическую связь этой системы с информационно-поисковыми системами (ИПС) и глобальными сетями. По существу, WWW представляет собой результат применения возможностей доступа к территориально распределенной информации для создания глобальных гипертекстовых и мультимедиа ИПС. Возможности доступа к территориально-распределенной информации обеспечивает для WWW всемирная сеть Internet и те локальные компьютерные сети, где Web-средства используются (в режиме Intranet). Наследуя базовые черты ИПС, Web-система в основном развивается как хранилище слабоструктурированной, разноплановой и часто несогласованной информации и тем отличается от баз данных, где информация структурирована и взаимосвязана.

И в Internet и в Intranet WWW представляет собой сеть Web-узлов, содержащих гипермедиа-документы и связи, позволяющие из одного документа ссылаться на другие, размещенные как на том же узле, так и на других. В основу Web-системы положены следующие технологии:

1. Схема клиент-сервер;

2. Единообразная адресация ресурсов, обеспеченная применением универсальных идентификаторов ресурсов (URI и URL);

3. Механизмы обменов и доступов к ресурсам, регламентируемые протоколом HTTP (Hyper Text Transfer Protocol - протокол передачи гипертекста);

4. Средства навигации и перемещения по мультимедиа-документам - реализованы с помощью языка HTML (Hyper Text Markup Language - язык гипертекстовой разметки), затем расширены средствами VRML (VRML - Virtual Reality Modeling Language - язык моделирования виртуальной реальности);

5. CGI - (Common Gateway Interface - обобщенный шлюзовой интерфейс) - стандарт для обмена информацией между сервером и другими программными модулями Web-узла.

Именно указанные технологии на основе общих принципов построения сети Internet и, в особенности, на базе системы протоколов TCP/IP сделали возможным функционирование WWW. Обратим внимание на тот факт, что, общаясь с WWW, пользователь в каждый конкретный момент времени устанавливает связь только с одним Web-узлом. Таким образом, взаимодействие пользователя с WWW всегда укладывается в схему клиент-сервер, несмотря на то, что серверы, т.е. Web-узлы, могут сменяться даже во время одного сеанса, а управляет этой сменой узлов пользователь (клиент) с помощью активации ссылок в изображении просматриваемого документа.

Рассмотрим задачи Web-узла (т.е. вычислительной машины с Web- сервером) и Web-клиента - вычислительной машины, на которой выполняется программа просмотра Web-документов (Web-браузер).

По запросу клиента (Web-браузера) Web-сервер:

• Отправляет ASCII-коды HTML-страниц (или VRML-документа), включающие при необходимости команды языка JavaScript;

• Отсылает двоичный код запрошенного ресурса (изображения, аудиопотока, видеопотока...);

• Отсылает байт-код Java-аплета;

• Принимает конкретную информацию от пользователя (когда браузер запрашивает эту информацию, предлагая пользователю заполнить HTML- форму) и помещает ее в базу данных на сервере. Так, например, регистрируются новые пользователи;

• Принимает сообщения от пользователя и регламентирует доступ к ресурсам Web-узла на основе анализа принятой информации (проверка паролей, контроль оплаты за доступ и т.д.), т.е. обеспечивает авторизованный доступ;

• Принимает информацию от пользователя и в зависимости от нее динамически формирует HTML-страницы, либо VRML-документы, обращаясь, при необходимости, к базам данных. Получив ответ Web-сервера, клиент (Web-браузер):

• Визуализирует HTML-страницу либо VRML-документ в окне браузера;

• Интерпретируя команды JavaScript, модифицирует (обогащает) образ HTML- страницы;

• Интерпретируя байт-код Java-аплета, дополняет новыми возможностями образ HTML-страницы;

• Ведет диалог с пользователем, заполняющим формы, и создает новые запросы к Web-серверу;

• С помощью утилит воспроизводит коды аудиопотоков и видеопотоков, т.е. обеспечивает мультимедийный режим;

• Моделирует виртуальную реальность, обрабатывая VRML-документы.

Перечисленные задачи Web-клиента и Web-сервера обеспечиваются программными средствами, размещенными на машинах клиента и сервера.

Здесь следует отметить, что стандартов на построение Web-клиента и Web- сервера пока нет, и их компонентный состав может сильно отличаться при переходе от одного программного продукта к другому. Именно поэтому (и в связи с постоянным развитием Web-системы в целом) вопросы программирования для WWW (Web-программирования) являются актуальными не только для разработчиков ее системной части, но и для большого числа авторов Web-публикаций. Здесь нужно обратить внимание на разнообразие языков программирования и инструментальных средств, применяемых в Web- программировании. Например, для написания CGI-модулей, исполняемых на машине Web-сервера, используют Си, Си++, Peri, Tel и др. Указанная ситуация отражает существующую много лет необходимость создавать программы, работающие на разных аппаратных платформах и в разных операционных системах. В докладе рассматриваются вопросы применения технологии Java для достижения некоторой унификации при разработке программ для World Wide Web. Но какие же программы нужно и можно программировать для WWW?

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

Распределенные по многочисленным Web-узлам массивы HTML- страниц, VRML-документы, Java-аплеты, CGI-модули, файлы ресурсов и прикладные мультимедийные программы в совокупности образуют прикладную часть Web-системы. Программирование, относящееся к прикладной части Web- системы, предусматривает:

- создание специализированных программ для обработки (на стороне клиента) файлов, получаемых от узлов сети Internet (например, воспроизведение мультимедийных файлов).

- разработку CGI-модулей для обработки (на стороне сервера) специфических запросов от Web-клиентов;

- разработку Java-аплетов для решения (на стороне клиента) нетиповых задач воспроизведения HTML-страниц (анимация, нестандартный диалог, графические построения и т.д.)

Обратите внимание, что результаты деятельности прикладного Web- программиста HTML.-страницы, утилиты для воспроизведения аудио- и видео- файлов, VRML-документы, CGI-модули, Java-аплеттов должна размещаться (храниться)на Web-узле, но только CGI-модули выполняются на машине Web-узла.

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

RLE Banner Network