Технология активных серверных страниц (ASP)



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

Active Server Pages позволяет встраивать в Web-документ скрипт (сценарий) и выполнять его на сервере. Сценарий, который нужно выполнить на сервере, размещается внутри специальных скобок <%...%>. Данный код сценария не доступен и не виден пользователю. Сам код сценария может быть написан с использованием VBScript, а также JavaScript (или JScript).

При обращении к ASP-странице происходит следующее:

- Пользователь вводит адрес ASP-страницы (имя файла с расширением .asp) в адресную строку браузера и нажимает Enter для запроса данной страницы. Далее выполняются следующие шаги:

- браузер посылает Web-серверу запрос на получение ASP-файла (ASP-страницы);

- Web-сервер получает запрос и по расширению .asp в имени файла распознает, что запрашивается ASP-страница;

- Web-сервер считывает нужный файл с диска;

- Web-сервер передает данный файл специальной программе-интерпретатору ASP-файлов; текст ASP-файла обрабатывается "сверху вниз". Все встречающиеся команды скриптового языка выполняются. В результате обработки получается стандартный HTML-файл.

- Этот HTML-файл отсылается браузеру.

- Технология ASP в MS Windows поддерживается Web-серверами US (Internet Information Server) и PWS (Personal Web Server).

Технология PHP

Названная технология включает в себя язык программирования (РНР), интерпретатор этого языка, средства реализации CGI-протокола и библиотеку функций, обеспечивающих доступ к разным ресурсам Интернет. В целом РНР имеет практически те же возможности, что и технология ASP, разработанная фирмой Microsoft. Однако РНР работает не только с узким кругом Web-серверов Microsoft.

Самая значимая возможность РНР - средства интеграции с БД. РНР - кросс-платформенный интерпретируемый на стороне Web-сервера язык программирования, предназначенный для создания активных Web-страниц. Синтаксис языка РНР основан на принципах построения языков С, Perl, Java. Код скрипта (сценария) на языке РНР встраивается непосредственно в HTML-текст. При запросе клиентом HTML-страницы со скриптом на языке РНР Web-сервер выполняет интерпретацию операторов языка. Обычно указанная интерпретация предусматривает изменение исходного HTML-текста, и этот измененный текст отправляется клиенту.

Чтобы "заставить" Web-сервер обращать внимание на РНР-код, включенный в HTML-страницу, чаще всего бывает достаточно записать эту страницу в текстовый файл с названием, имеющим расширение, например ".php". Сам код РНР-скрипта или отдельного РНР-оператора выделяется в тексте HTML-документа специальными скобками <?php... ?>. Текст вне этих скобок РНР-интерпретатор не рассматривает, и он передается браузеру (клиенту) без изменений.

Java-аплеты

В 1995 г. фирмой SUN Microsystems разработан объектно-ориентированный язык программирования Java. Одной из особенностей этого языка является его независимость от платформы (от ОС и аппаратных средств ЭВМ), на которой выполняются программы, написанные на Java. Главное в этом языке то, что Java-программы исполняются в виртуальной машине, если таковая имеется в ОС компьютера. (Виртуальная машина - это программный модуль, интерпретирующий код Java-программы). Такой подход приводит к некоторым важным особенностям.

- Java-программы не зависят от платформы, на которой они исполняются. Java-программа без каких-либо изменений будет работать на любой ЭВМ, где есть виртуальная машина.

- Окружение, в котором работает Java-программа, называется оболочкой времени выполнения (runtime environment). Java-программа никогда не сможет получить прямой доступ к устройствам ввода-вывода, файловой системе и даже памяти. Вместо Java-программы все это делает виртуальная машина.

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

В Web наибольшее распространение получили аплеты, исполняемые на стороне Web-клиента. Когда запускается аплет, виртуальная машина запрещает ему доступ к файловой системе, разрешая только косвенный доступ к избранным системным ресурсам. Вот почему аплетам, полученным из Интернет, можно доверять: они не способны уничтожать файлы или распространять вирусы.

Сами аплеты, включенные в HTML-страницы, - это файлы, содержащие так называемый байт-код (который исполняется виртуальной Java-машиной). Имена файлов с байт-кодами аплетов имеют расширение .class.

Для встраивания вызовов аплетов в текст HTML-документа в HTML введен контейнер applet, начинающийся тегом <applet> и заканчивающийся тегом </applet>. Applet решает две задачи: обеспечивает вызов Java-аплета из HTML-документа; при отображении документа отводит место для размещения формируемой аплетом информации в рабочем поле браузера.

Встраивание объектов (OBJECT)

Object позволяет вставлять в Web-страницу объекты, которые браузер самостоятельно не распознает. Пусть в Web-страницу нужно вставить объект, созданный во флэш-технологии - анимированное изображение во флэш-формате. Пусть изображение находится в файле Movie1.swf. Браузер не может работать с такими данными, однако к нему можно подключить программу для "проигрывания" флэш-файлов - флэш-плейер. Если плейер установлен, браузер распознает его по идентификатору, указанному в качестве значения атрибута classid:classid= "clsid:D27CDB6E-AE6D-llcf-96B8-444553540000". Если плейера нет, то он устанавливается с сайта фирмы Macromedia. Для этого атрибут codebase в качестве значения определяет адрес (URL) плейера: codebase= "http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0". Далее указываются размеры изображения на Web-странице: width=250 height=200. Затем - параметры, передаваемые плейеру: <param name=movie value="Moviel.swf "> указывает имя файла с кодом изображения: Moviel.swf; <раram name=quality value=high> задает качество воспроизведения; <param name=bgcolor value=#FFFFFF> указывает фоновый цвет области анимации.

<html>

<head>

<title>Movie1</title>

</head>

<body>

<object classid="clsid:D27CDB6E-AE6D-llcf-96B8-444553540000"

codebase=http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0

height=200>

<param name=movie value="Moviel.swf ">

<param name=quality value=high>

<param name=bgcolor value=#FFFFFF>

</object>

</body>

</html>

Переход к XML.

SGML (Standart Generalised Markup Language - стандартный обобщенный язык разметки) утвержден ISO в качестве стандарта в 80-х годах (стандарт ISO 8879:1986). Этот язык, во-первых, служит универсальным средством разметки текстовой информации, а во-вторых, используется в качестве метаязыка для определения других языков разметки. Он определяет для каждого вводимого им языка допустимый набор тегов, их атрибуты и внутреннюю структуру документа. Контроль за правильностью использования элементов разметки в тексте, размеченном с помощью SGML, осуществляется при помощи специального набора правил - DTD-описаний (DTD - Document Type Definition - определение типа документа), которые используются программой обработки размеченного текста при разборе документа. Для каждого класса документов определяется свой набор правил, описывающих грамматику соответствующего языка разметки. С помощью SGML можно описывать структурированные данные, организовывать информацию, содержащуюся в документах, и представлять эту информацию в стандартизованном формате. Но ввиду своей сложности (свыше 500 страниц спецификаций) SGML используется, в основном, для описания синтаксиса других языков (например, HTML), и лишь немногие приложения работают с SGML-документами напрямую.

Более простой и удобный, чем SGML, HTML позволяет определять оформление элементов документа только с помощью ограниченного набора инструкций разметки - тегов, при помощи которых осуществляется процесс разметки. Инструкции HTML, в первую очередь, предназначены для управления процессом отображения содержимого документа на экране программы-клиента. Тем самым они определяют способ представления документа, но не его структуру. В качестве основы гипертекстовой ИС, описываемой HTML, используется текстовый файл, который может легко храниться в файловой системе и передаваться по сети. Это, а также тот факт, что HTML является открытым стандартом, в силу чего множество пользователей могут применять его для оформления своих документов, повлияли на рост популярности HTML.

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

Т.о., встретив, например, описание: <font color="red">rose</font>, браузер может определить, каким цветом отобразить текст, содержащийся внутри тегов <font></font>, и отобразит его правильно. Однако для браузера не имеет значения, в каком месте документа встретился этот элемент, в какие другие теги заключен текущий фрагмент, существуют ли вложенные в него фрагменты и правильно ли построены отношения между фрагментами документа.

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

Т.О, можно утверждать, что сегодня HTML уже не удовлетворяет в полной мере требованиям, предъявляемым современными разработчиками к языкам подобного рода. И ему на смену был предложен новый язык разметки гипертекста - мощный, гибкий и одновременно с этим удобный язык XML.

XML (extensible Markup Language - расширяемый язык разметки) - язык, описывающий класс информационных объектов, называемых XML-документами. Если HTML - SGML-приложение (язык, определенный с помощью SGML), то XML - подмножество SGML, т.е. его упрощенный вариант, созданный специально для использования в Интернет. XML полностью совместим с SGML. Основное назначение XML - структурирование информации, а ее форматирование при отображениях выполняется с помощью листов стилей, применяемых и в HTML. Язык XML используется в качестве средства для описания грамматики класса документов и контроля за правильностью разметки документов. Сам XML не содержит тегов, предназначенных для разметки, он просто определяет правила их создания. Т.о., если, например, для обозначения в документе элемента rose (роза) автор хочет использовать новый тег <flower> (цветок), то XML позволяет это сделать и в документ можно включать фрагменты, подобные следующему:

<flower>rose</flower>

Набор тегов может быть и далее расширен. Если, предположим, необходимо указать, что описание цветка должно располагаться внутри описания оранжереи (conservatory), в которой он цветет, то в этом случае вводятся новые теги и определяется порядок их размещения относительно тегов <flower>, </flower>. После этого может быть использована такая конструкция:

<conservatory>

<flower>rose</flower>

</conservatory>

Если нужно "посадить" в оранжерею еще цветы, то можно внести следующие изменени:

<conservatory>

<flower>rose</flower>

<flower>tulip</flower>

<flower>cactus</flower>

</conservatory>

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

Еще одним из достоинств XML является возможность использования его в качестве универсального языка запросов к хранилищам информации. Сегодня в W3C находится на рассмотрении рабочий вариант стандарта XML-QL (или XQL), который, возможно, составит конкуренцию SQL. Кроме того, XML-документы могут выступать в качестве уникального способа хранения данных, который включает в себя одновременно как средства для анализа информации, так и средства представления ее на стороне клиента. XML позволяет также осуществлять контроль за корректностью данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт структуры документов, содержимым которых могут быть самые разные данные. Это означает, что его можно использовать при построении сложных ИС, в которых важным является вопрос обмена информацией между различными приложениями, работающими в одной системе.

Еще одним из достоинств XML является то, что программы-обработчики XML-документов несложны. Сегодня свободно распространяются всевозможные программные продукты, предназначенные для работы с XML-документами. XML поддерживается в Microsoft Internet Explorer 4 и IE5. Все это дает основания предполагать, что в ближайшем будущем XML станет основным языком обмена для ИС. На основе XML уже сегодня созданы такие известные языки разметки, как SMIL, CDF, MathML, XSL. Список проектов новых языков, находящихся на рассмотрении W3C, постоянно пополняется.

Вопросы.

1. Охарактеризовать структуру HTML-документа.

2. Пояснить назначение гипертекстовых ссылок в HTML-документе.

3. Назвать основные элементы разметки заголовка HTML-документа.

4. Охарактеризовать назначение элемента разметки заголовка META.

5. Охарактеризовать назначение элемента разметки заголовка SCRIPT.

6. Пояснить назначение каскадных таблиц стилей.

7. Пояснить назначение фреймов в HTML-документах.

8. Пояснить назначение форм в HTML-документах.

9. Пояснить суть технологии Server Side Include.

10. Назвать языки скриптов для HTML-документов.

11. Пояснить суть технологии DHTML.

12. Пояснить суть технологии активных серверных страниц (ASP).

13. Пояснить суть технологии PHP.

14. Пояснить, что представляют собой Java-аплеты.

15. Пояснить, что понимается под встраиванием объектов в HTML-документ.

16. Пояснить особенности XML.

 


Дата добавления: 2018-04-05; просмотров: 254; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!