Средства расширения HTML-технологий
Фреймы — тип элементов, обеспечивающих возможность разделить рабочее окно программы просмотра на несколько независимых панелей. В каждый фрейм может быть загружена отдельная страница HTML. Различаются фреймы визуальных границ, с прокруткой (или без), плавающие фреймы. В то время как обычные фреймы позволяют лишь разделить область просмотра на несколько частей, плавающие фреймы позволяют вставить одну Web-страницу в другую, кроме того, такой фрейм можно свободно разместить на странице, указав его размер и отступ справа или слева.
Спецификация CGI была разработана в Центре суперкомпьютерных приложений Университета штата Иллинойс (NCSA). С точки зрения общей архитектуры программного обеспечения World Wide Web CGI определила все дальнейшее развитие системных средств. До появления этой спецификации все новые возможности реализовывались в виде модулей, включенных в библиотеку общих кодов ЦЕРН. Разработчики серверов должны были использовать эти коды для реализации программ или заменять их своими собственными аналогами. Это означало, что после компиляции сервера будет невозможно добавить в него новые возможности, однако спецификации CG1 в корне изменили эту практику.
Главное назначение Common Gateway Interface — обеспечение единообразного потока данных между сервером и прикладной программой, которая запускается под управлением сервера. CGI устанавливает протокол обмена данными между сервером и программой. Может показаться, что CGI — это просто подмножество протокола HTTP, однако это не так. Во-первых, CGI определяет порядок взаимодействия сервера с прикладной программой, в котором сервер выступает инициирующей стороной, во-вторых, CGI задает механизм реального обмена данными и управляющими командами в этом взаимодействии, что не определено в HTTP. Естественно, что такие понятия, как метод доступа, переменные заголовка, MIME, типы данных, заимствованы из HTTP и делают спецификацию прозрачной для тех, кто знаком с самим протоколом.
При описании различных программ, которые вызываются сервером HTTP и реализованы в стандарте CGI, используют следующую терминологию.
CGI-скрипт — программа, написанная в соответствии со спецификацией Common Gateway Interface. CGI-скрипты могут быть написаны на любом языке программирования (С, С++, Pascal, Fortran и т. п.) или командном языке (shell, cshell, командный язык MS-DOS, Perl и т. п.). Скрипт может быть написан в том числе и на языке редактора ЕМАС в системах Unix.
Шлюз — CGI-скрипт, который используется для обмена данными с другими информационными ресурсами Internet или резидентными приложениями (демонами). Обычная CGI-программа запускается сервером HTTP для выполнения некоторой работы, возвращает результаты серверу и завершает свое выполнение. Шлюз выполняется аналогично, однако он инициирует взаимодействие с третьей программой в качестве клиента. Если эта третья программа является сервисом Internet, например Gopher-cep- вером, то шлюз становится клиентом Gopher, который посылает запрос по порту Gopher, а после получения ответа пересылает его серверу HTTP. По аналогии осуществляется взаимодействие с серверами распределенных баз данных (например, Oracle).
С управлением отображением информации в фреймах и окнах тесно связано написание сценариев просмотра Web-страниц. Такие сценарии чаще всего пишутся на языке JavaScript.
JavaScript — язык управления сценарием отображения документа — позволяет расширять свойства, предоставляемые HTML. По своей природе JavaScript — это условнообъектно-ориентированный язык программирования, который не поддерживает инкапсуляцию объектов и полиморфизм методов. Объекты, над которыми можно выполнять различные операции в JavaScript, — это элементы интерфейса Netscape Navigator и контейнеры HTML. Средствами этого языка могут быть реализованы многие полезные эффекты (мультипликация, контекстная помощь, проверка синтаксиса и многое другое).
В JavaScript функция пользователя выполняется при наступлении некоторого события (например, onChange, onClick, onLoad и др.) либо же внутренние функции языка используются непосредственно.
Контейнер типа <SCRIPT LANGUAGE= "Java Script">... </SCRIPT> может использоваться как в заголовке, так и в теле документа.
JavaScript — не единственный язык управления сценариями просмотра документов; известна аналогичная разработка — VBScript (на основе Visual Basic, фирмы Microsoft).
Java — объектно-ориентированный язык программирования, который связан с World Wide Web библиотекой классов, описывающих элементы интерфейса пользователя (кнопки, поля ввода, меню, метки, графические объекты и пр.), порядок взаимодействия страниц World Wide Web с другими ресурсами сети через транспорт TCP/IP. Язык поддерживает возможность построения многопоточных программ.