Пиши Дома Нужные Работы

Обратная связь

Распределенные системы и приложения

СОЗДАНИЕ

ГИПЕРТЕКСТОВОЙ СРЕДЫ

Часть 2

 

«Динамический HTML»

 

Учебное пособие

 

Введение в курс

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

Кратко о языке DHTML:

Язык работает на основе классического статического языка HTML, создан для непосредственного взаимодействия пользователя с web-страницами, служит для придания web-странице свойств динамичности и интерактивности (диалогового взаимодействия). Для этого используются так называемые сценарии (скрипты), программы обработки, апплеты (программы написанные на специальном языке). При помощи DHTML можно изменить элементы страницы уже загруженной в браузер.

DHTML включает в себя 3 основных компонента: (классический HTML, использование каскадных таблиц стилей (CSS) и язык сценариев. Все три компонента оъеденены так называемой объектной моделью, которая представляет собой интерфейс (способ взаимодействия между исходным HTML-текстом и браузером).

Современные программы в основном пишутся на объектно-ориентированных языках: C++, Java, Java Script, VBS Script, а основные используемые браузеры – являются программами основанными на объектной модели.

Итак: просматривая страницу, пользовательможет вызвать различные события: щелчок кнопкой мыши, попадание курсора мыши в определенное место страницы и т.д. если мы хотим, чтобы наша страница как-то отреагировала на это необходимо встроить в HTML документ специальную программу обработки событий - СЦЕНАРИЙ. Сценарий пишется на программном языке Java Script или VBS Script (Visual Basic Script). Создание сценариев на этих языках не является чем-то очень сложным и как всякое прогаммирование просто требует определенного опыта.



Что касается сценариев: сценарий, скрипт, программа обработки –апплет- это термины обозначающие программу написанную на специальном языке, совместимом с HTML. Если короче, то стандартные возможности гипертекста дополняются вычислительными возможностями.

Кроме самой написанной программы (сценария) нужно иметь средства связи с web-документом. Это происходит за счет:

1.Размещения сценария непосредственно в HTML документе с помощью тэга <SCRIPT> - это встроенный сценарий.

2.Размещение сценария в виде отдельного файла на сервере вместе с другими файлами страницы. Такие сценарии называются апплетами-пишутся на языке Java (это не Java Script!!!) и связываются с документом при помощи тэна <APPLET>.

3. Использование специальных приложений написанных не нами (CGI –приложения) которые связываются с HTML-документами при помощи ссылки <A HREF> .Для этого необходимо зайти на сайт провайдера и узнать, какие там есть инструкции по использованию CGI –приложений.

Проще же всего сосредоточиться на встроенных сценариях: программа встроенного сценария размещается внутри тэга заголовка <HEAD>при помощи тэга <SCRIPT> .Для указания языка сценария служит атрибут LANGUAGE. Если сценарий пишется на языке Java Script, то атрибут LANGUAGE не указывается, т.к. Java Script основан на стандартном английском языке. Это необходимо для языков Visual Basic Script или VBS.

Пример:

<HTML>

<HEAD>

< SCRIPT_ LANGUAGE=”название языка”> текст сценария

</ SCRIPT>

</HEAD>

<BODY>…………….

……………………….

</BODY>

</HTML>

 

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

Чтобы организовать поле ввода данных используется тэг <INPUT>.

<INPUT_TYPE=”TEXT”>

Если в виде пароля (звездочек):

<INPUT_TYPE=”PASSWORD”>

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

 

Глава1. DHTML и Java Script

1.1. Модель клиент-сервер в Интернете

 

Распределенные системы и приложения

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

В распределенной системе можно выделить два аспекта:

· первый - все компьютеры автономны;

· второй - для пользователей это единая система.

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

Рис. 1.

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

· уровень пользовательского интерфейса;

· уровень обработки;

· уровень данных.

Формы организации архитектуры клиент-сервер отличаются тем, какие задачи решаются клиентом и сервером:

Рис. 2.

Взаимодействие клиента и сервера в Интернете осуществляется с помощью запросов, посылаемых клиентом серверу, и ответов сервера на запрос клиента:

Рис. 3.

Суть распределенных систем - связь между процессами, реализующими не только взаимодействие компьютеров, но и частей (уровней) приложений. Взаимодействие частей приложений реализуется с помощью протоколов, описывающих состав и формат данных, пересылаемых соответствующими частями клиентских и серверных приложений друг другу для решения поставленной задачи. В Интернете разбиение приложений на части осуществляется на базе стека протоколов TCP/IP:

Рис. 4.

Первоначально в Интернете существовала только возможность пересылки файлов (протокол FTP), почтовых сообщений (e-mail) и подключение компьютера как удаленного терминала сервера (TELNET). Технология World Wide Web (WWW) и производство доступных для пользователей средств коммуникации (модемы) изменили Интернет и сделали его основным средством получения и опубликования информации.

Основу WWW составляет гипертекстовый документ, создаваемый с помощью языка разметки гипертекстовых документов (HTML), и протокол передачи гипертекстовых документов (HTTP).

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

Рис. 5.

В настоящее время используется язык HTML версии 4.01, поддерживаемый организацией WWW-консорциум (www.w3.org).

Для передачи гипертекстовых документов применяется протокол HTTP версии 1.1 (RFC 2616).

Его основу составляют HTTP-сообщения, подразделяемые на:

· запрос (request) клиента к серверу;

· ответ (response) сервера клиенту.

HTTP-запрос

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

 

В строке запроса указывается адрес (URI) документа, запрашиваемого клиентом с сервера, а метод может указывать, каким образом передается информация, введенная пользователем в формах HTML, от клиента к серверу. Методом GET информация передается непосредственно в строке запроса, добавляясь после знака вопроса ? к адресу запрашиваемого документа (тело HTTP-запроса в этом случае пусто). Методом POST передаваемая информация помещается в тело запроса. Кроме указанных двух методов HTTP-запрос поддерживает и ряд других методов, позволяющих выполнить определенные действия на сервере.

Методы:

OPTIONS запрос информации о доступных опциях коммуникаций
GET получение информации, определенной в URI запроса
HEAD аналогичен GET, но информация не пересылается
POST запрос и пересылка информации, определенной в теле запроса
PUT сохранение на сервере под указанным в запросе URI пересылаемой в его теле информации
DELETE удаление на сервере документа с указанным в запросе URI
TRACE определяет, что будет получено из концевой цепочки запросов
CONNECT используется с прокси-сервером

 

Пример 1. Пример HTTP-запроса методом GET:
GET /search?keywords=servlets+jsp HTTP/1.1Accept: image/gif, image/jpg, */*Encoding: gzip, deflateAccept-Language: en-usConnection: Keep-AliveCookie: userID=id456578Host: 212.250.238.67Referer: http://www.somebookstore.com/findbooks.htmlUser_Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows XP)

HTTP-ответ

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

 

Пересылаемый в ответ на запрос клиента сервером документ всегда содержится в теле HTTP-ответа.

Пример 2. Пример HTTP-ответа сервера:
HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Connection: Keep-AliveDate: Thu, 8 Jul 1999 10:27:16 GMTContent-Type: text/htmlAccept-Ranges: bytesContent-Length: 2964Last-Modified: Thu, 8 Jul 1999 10:27:16 GMTCookie: userID=id456578 <HTML>. . .</HTML>

Предложенная первоначально технология WWW с ее гипертекстовыми документами позволяла получать статические страницы HTML. Но с введением в HTML 2.0 форм, позволяющих получать от пользователя и передавать на сервер информацию, возникла необходимость в создании приложений, которые могут обрабатывать эту вводимую в поля формы пользователем информацию. Для сервера был разработан специальный интерфейс Common Gateway Interface (CGI) (стандарт), доступный приложениям, выполняемым на машине сервера (используются языки C, Perl).

Рис. 6.

Каждое обращение клиента к CGI-сценарию выполняется в собственном процессе, создаваемом операционной системой. Получение передаваемой и отсылаемой информации реализовано через стандартные потоки ввода/вывода - stdin и stdout. Следует отметить, что выполнение серверных CGI-сценариев обычно достаточно медленное, даже если они и реализованы в виде выполнимых exe-файлов, так как в этой технологии всегда приходится организовывать межпроцессное взаимодействие.

Компания Microsoft для своего сервера IIS реализовала кроме CGI-интерфейса дополнительный интерфейс ISAPI - Internet Server Application Programming Interface (компания Netscape для своего сервера реализовала интерфейс NSAPI). Этот интерфейс позволяет создавать серверные приложения, выполняющиеся в том же процессе, в котором выполняется и программа самого сервера, а также он позволяет создавать сценарии, обладающие дополнительными возможностями взаимодействия сервера и сценария.

Одним из недостатков CGI-технологии является то, что страница HTML формируется полностью с нуля при каждом запросе к CGI-сценарию. Компания Microsoft, разработав технологию IDC (Internet Database Connector), уже в ней реализовала идею шаблона - документа HTML, в определенные места которого вставлялись данные по запросу пользователя из базы данных. Эта технология была реализована через ISAPI.

Дальнейшее развитие серверных технологий привело к появлению технологии ASP - Active Server Pages, в которой совмещены наилучшие стороны всех рассмотренных технологий. Страница ASP - это заготовка документа HTML, в который кроме кода HTML встроен выполняемый во время обработки до отсылки клиенту код, написанный на одном из двух, поддерживаемых в ASP языков сценариев, - JavaScript (JScript) или VBScript. Кроме этого в ASP были реализованы специальные компоненты, выполняющие наиболее часто встречающие задачи: определение характеристик программы просмотра Интернета и операционной системы клиента, взаимодействие с БД и т.п. Таким образом, приложение на основе технологии ASP представляет собой трехуровневую архитектуру:

Рис. 7.

Исследования работы приложений Интернета показали, что в 70% случаев для выполнения определенных действий пользователя нет необходимости обращаться к серверу - эти действия можно реализовать на клиенте, если бы он позволял каким-то образом их запрограммировать. Так появился встроенный в программу просмотра Интернета язык JavaScript, который расширил возможности языка разметки HTML, предоставляя разработчику возможность встраивать в документ HTML код программы, выполняющейся на клиенте.

 






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.