Слайд 1WEB технологии
К 1989 году гипертекст представлял новую, многообещающую технологию, которая имела
относительно большое число реализаций с одной стороны, а с другой стороны делались попытки построить формальные модели гипертекстовых систем, которые носили скорее описательный характер и были навеяны успехом реляционного подхода описания данных. Идея Т. Бернерс-Ли заключалась в том, чтобы применить гипертекстовую модель к информационным ресурсам, распределенным в сети, и сделать это максимально простым способом. Он заложил три краеугольных камня системы из четырех существующих ныне, разработав:
язык гипертекстовой разметки документов HTML (HyperText Markup Lan-guage);
универсальный способ адресации ресурсов в сети URL (Universal Resource Locator);
Слайд 2Количество компьютеров в мировых сетях
Слайд 4Классификация web ресурсов
навигационные сайты
конечные (или функциональные) сайты
каталоги
поисковые
системы
порталы
информационные
(или тематические)
сайты
сайты
электронной
коммерции
корпоративные
сайты
сайты, являющиеся
Web интерфейсами
сетей Интернет
Слайд 5HTML
Часто применяются следующие расширения языка HTML (выполняются на стороне клиента
и/или сервера и расширяют их возможности)
Java - машинно-независимый язык программирования (подробнее см. подраздел 7.2.2).
JavaScript, VBScript и PerlScript - языки программирования, интегрированные в HTML-код.
CGI и ISAPI - серверные расширения HTML, служащие для организации полномасштабного диалога в Сети.
ActiveX - предложенная Microsoft Corp. технология, позволяющая вводить в WEB-страницы любые (выгружаемые из Сети) активные программные объекты; реализована в виде построенного на Win32 и OLE API (подробности можно получить с сервера фирмы-разработчика www.microsoft.com). Технология ActiveX, например, удачно применена фирмой Inprise Corp. для создания ‘тонкого’ клиента при работе с базами данных (внешне имеет много общего с технологией MIDAS той же фирмы, однако выполняется в броузере клиента) для InterNet’а
Слайд 6HTML
Часто применяются следующие расширения языка HTML (выполняются на стороне клиента
и/или сервера и расширяют их возможности)
IDC - Internet Database Connector - средство доступа к базам данных через ODBC (Open Database Connectivity) в технологии ‘клиент/сервер’ для Microsoft SQL Server (IDC включает также соответствующий формат файлов).
ASP (Active Server Pages) - технология позволяет решать те же задачи, что и с помощью CGI и ISAPI, однако при этом заметно упрощается процесс разработки WEB-приложений [23]. Документ ASP включает шаблон, использует серверные сценарии на языке JScript или VBScript, запросы к БД на SQL и COM-технологию.
PHP/FI - развивающийся в последнее время язык создания домашних WEB-страниц, облегчения разработки форм и таблиц и анализа запросов SQL; предложения PHP/FI (одна из распространенных версий - 2.0) встраиваются непосредственно в текст HTML-страниц и выполняются серверным процессом (см. подраздел 7.2.4).
Слайд 7Следует отметить существующие технологии работы с мультимедиа в InterNet
RealAudio (фирма
Progressive Network) - один из примеров многообещающей технологии потоковой передачи данных (streaming audio), позволяющей проигрывать (звуковой) файл в процессе его загрузки (информация на адресе www.realaudio.com); одна из популярных программ - SOX (SOund eXchange, см. www.spies.com/Sox/). Другие примеры - системы IWave (сокращение от InternetWave, фирма VocalTec, информация на адресе www.dspg.com) и TrueSpeech.
MBONE - Multicast Backbone - виртуальная сеть, позволяющая передавать видеоизображения и аудио через InterNet с использованием технологии групповой пересылки (multicasting). Видео воспроизводится со скоростью 1 кадр/сек (при пропускной способности канала 128 Кбайт/сек), для высококачественной передачи голоса требуется 32 или 64 Кб/сек (MBONE применялась для репортажей непосредственно с места событий, например, при выходе космонавтов в открытый космос). Работу с MBONE поддерживают приложения NetVideo, VisualAudioTool и Whiteboard (все для UNIX).
Слайд 8Следует отметить существующие технологии работы с мультимедиа в InterNet
StreamWorks -
разработанная фирмой Xing Technology Corp. система передачи видео и аудио по любой сети (информация на www.xingtech.com). Корпорации NBS и Reuters применяют StreamWorks для передачи коммерческим подписчикам репортажей с места событий, несколько WEB-радиостанций используют StremWorks для высококачественной трансляции музыки (от 14,4 Кб/сек до 44,1 Кб/сек для стерео и 112 Кб/сек для полноценного видео).
VRML - Virtual Reality Modeling Language - язык моделирования виртуальной реальности, подробнее см. работ.
Слайд 9elements
anchors
location
forms
links
images
Иерархия объектов JavaScript
Слайд 10Язык Java по синтаксису близок к C++, однако имеет существенные особенности
Не
поддерживается перегрузка операторов (вследствие трудности поддержки и относительно редкого использования на практике).
Запрещено множественное наследование (основания подобны вышеприведенным, запрет несколько смягчается возможностью использования унаследованных интерфейсов).
Исключены указатели, являющиеся частой причиной труднолокализируемых ошибок в C++.
Слайд 11Мощь языка Java основана на сочетании четырех его характеристик
Сетевой осведомленности (network
awareness) - заключается в том, что каждое решение при разработке языка принималось таким образом, чтобы предоставить возможность Java-приложениям обладать сетевыми характеристиками (в применении к InterNet это вылилось в обеспечении гнездового интерфейса низкого уровня - low-level socket interface).
Переносимости - возможность исполнения Java-программ на различных аппаратных и операционных платформах.
Безопасности - достигается путем сегментации памяти, выгрузки из Сети только классов Java (а не ‘родных’, зависящих от конкретной ОС, методов) и фильтрования всех потенциально опасных требований доступа к системным ресурсам через специальный класс SecurityManager.
Объектной ориентации - путем разграничения доступа к объектам путем применения концепций наследования и инкапсуляции.
Слайд 12Расширенный язык разметки XML
XML-документ состоит из двух частей: размеченного документа,
отображающего исходную информацию, и декларации средств используемого языка разметки. Эта декларация, называемая таблицей определения типов DTD (Document Type Definition), должна соответствовать общим правилам языка XML, но может содержать объявления элементов, специфичных для некоторого приложения и определяющих используемую разновидность XML. Разновидности XML (словари XML) могут создаваться по мере необходимости, что и оправдывает определение XML как метаязыка.
Слайд 13PHP
PHP – это язык сценариев, выполняющийся на стороне сервера. Он был
разработан специально для Web – программирования и в очень короткие сроки приобрел большую популярность. PHP является интерпретируемым языком программирования.
Слайд 15Программное обеспечение
WWW построено по схеме
клиент-сервер.
Слайд 16HTTP
НТТР используется для взаимодействия программ-клиентов с программами-шлюзами, разрешающими доступ к:
файловым
архивам FTP
системам Gopher и WAIS
ресурсам электронной почты
спискам новостей Usenet
Протокол реализует принцип "запрос - ответ".
Запрашивающая программа-клиент инициирует взаимодействие с сервером и посылает запрос:
метод доступа
адрес URL
версию протокола
сообщение с модификаторами типа данных
информация клиента
Слайд 17Заголовки протокола HTTP
Заголовки объекта
Allow Перечисляет поддерживаемые сервером методы
Content-Encoding Способ, которым закодировано
тело сообщения, например, с целью уменьшения размера
Content-Length Длина сообщения в байтах
Content-Type Тип содержимого и, возможно, некоторые параметры
ETag Уникальный тэг ресурса на сервере, позволяющий сравнивать ресурсы
Expires Дата и время, когда ресурс на сервере будет изменен, и его нужно получать заново
Last-Modified Дата и время последней модификации содержимого
Слайд 18Заголовки протокола HTTP
Заголовки ответа
Age Число секунд, через которое нужно повторить запрос
для получения нового содержимого
Location URI ресурса, к которому нужно обратиться для получения содержимого
Retry-After Дата и время или число секунд, через которое нужно повторить запрос, чтобы получить успешный ответ
Server Название программного обеспечения сервера, приславшего ответ
Заголовки запроса
Accept Типы содержимого, которое "понимает" клиент и может воспроизвести
Accept-Charset Кодировки символов, в которых клиент может принимать текстовое содержимое
Accept-Encoding Способ, которым сервер может закодировать сообщение
Host Хост и номер порта, с которого запрашивается документ
Слайд 19Заголовки протокола HTTP
If-Modified-Since,If-Match,If-None-Match,If-Range,If-Unmodified-Since Заголовки запроса для условного обращения к ресурсу
Range Запрос
части документа
User-Agent Название программного обеспечения клиента
Общие заголовки
Connection Указывает серверу на завершение (close) или продолжение (keep-alive) сеанса
Date Дата и время формирования сообщения
Слайд 21Публикация БД в Интернет со статическим формированием страниц
Слайд 22Публикация БД в Internet с использованием технологии CGI