Upload
tana
View
45
Download
0
Embed Size (px)
DESCRIPTION
WEB технологии. - PowerPoint PPT Presentation
Citation preview
WEB WEB технологиитехнологии К 1989 году гипертекст представлял новую, многообещающую К 1989 году гипертекст представлял новую, многообещающую
технологию, которая имела относительно большое число технологию, которая имела относительно большое число реализаций с одной стороны, а с другой стороны делались реализаций с одной стороны, а с другой стороны делались попытки построить формальные модели гипертекстовых систем, попытки построить формальные модели гипертекстовых систем, которые носили скорее описательный характер и были навеяны которые носили скорее описательный характер и были навеяны успехом реляционного подхода описания данных. Идея Т. успехом реляционного подхода описания данных. Идея Т. Бернерс-Ли заключалась в том, чтобы применить гипертекстовую Бернерс-Ли заключалась в том, чтобы применить гипертекстовую модель к информационным ресурсам, распределенным в сети, и модель к информационным ресурсам, распределенным в сети, и сделать это максимально простым способом. Он заложил три сделать это максимально простым способом. Он заложил три краеугольных камня системы из четырех существующих ныне, краеугольных камня системы из четырех существующих ныне, разработав: разработав: язык гипертекстовой разметки документов HTML (HyperText язык гипертекстовой разметки документов HTML (HyperText Markup Lan-guage); Markup Lan-guage); универсальный способ адресации ресурсов в сети URL (Universal универсальный способ адресации ресурсов в сети URL (Universal Resource Locator); Resource Locator);
Количество компьютеров в Количество компьютеров в мировых сетяхмировых сетях
100010
тыс
100 тыс1 млн
61 млн
147млн
500млн
945млн
1,46млрд(прогноз)
0
200000000
400000000
600000000
800000000
1000000000
1200000000
1400000000
1600000000
1984 1987 1989 1993 1996 1998 2001 2005 2007
Количество пользователей Интернет в разных странах
76,5
9,75 8,1 7,14 6,494,36 2,79 2,58 2,14 1,98 1,96 1,65
0
1 E -1 1
2 E -1 1
3 E -1 1
4 E -1 1
5 E -1 1
6 E -1 1
7 E -1 1
8 E -1 1
9 E -1 1
С т р а н ы
Ми
лл
ио
но
в
Чел
ов
ек
США
Япония
Великобритания
Германия
Канада
Австралия
Франция
Швеция
Италия
Испания
Нидерланды
Тайвань
Классификация web ресурсов
навигационные сайты
конечные (или функциональные) сайты
каталоги
поисковые системы
порталы
информационные (или тематические)
сайты
сайты электронной коммерции
корпоративные сайты
сайты, являющиесяWeb интерфейсами
сетей Интернет
HTMLHTML
Часто применяются следующие расширения языка 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’а
HTMLHTML
Часто применяются следующие расширения языка 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).
Следует отметить существующие Следует отметить существующие технологии работы с мультимедиа в технологии работы с мультимедиа в
InterNetInterNet RealAudioRealAudio (фирма (фирма Progressive NetworkProgressive Network) - один из примеров ) - один из примеров многообещающей технологии потоковой передачи данных (многообещающей технологии потоковой передачи данных (streaming streaming audioaudio), позволяющей проигрывать (звуковой) файл в процессе его ), позволяющей проигрывать (звуковой) файл в процессе его загрузки (информация на адресе загрузки (информация на адресе wwwwww..realaudiorealaudio..comcom); одна из ); одна из популярных программ - популярных программ - SOXSOX ( (SOund eXchangeSOund eXchange, см. , см. wwwwww..spiesspies..comcom//SoxSox/). Другие примеры - системы /). Другие примеры - системы IWaveIWave (сокращение (сокращение от от InternetWaveInternetWave, фирма , фирма VocalTecVocalTec, информация на адресе , информация на адресе wwwwww..dspgdspg..comcom) и ) и TrueSpeechTrueSpeech..MBONEMBONE - - Multicast BackboneMulticast Backbone - виртуальная сеть, позволяющая - виртуальная сеть, позволяющая передавать видеоизображения и аудио через передавать видеоизображения и аудио через InterNetInterNet с с использованием технологии групповой пересылки (использованием технологии групповой пересылки (multicastingmulticasting). ). Видео воспроизводится со скоростью 1 кадр/сек (при пропускной Видео воспроизводится со скоростью 1 кадр/сек (при пропускной способности канала 128 Кбайт/сек), для высококачественной способности канала 128 Кбайт/сек), для высококачественной передачи голоса требуется 32 или 64 Кб/сек (передачи голоса требуется 32 или 64 Кб/сек (MBONEMBONE применялась применялась для репортажей непосредственно с места событий, например, при для репортажей непосредственно с места событий, например, при выходе космонавтов в открытый космос). Работу с выходе космонавтов в открытый космос). Работу с MBONEMBONE поддерживают приложения поддерживают приложения NetVideoNetVideo, , VisualAudioToolVisualAudioTool и и WhiteboardWhiteboard (все для (все для UNIXUNIX).).
Следует отметить существующие Следует отметить существующие технологии работы с мультимедиа в технологии работы с мультимедиа в
InterNetInterNet StreamWorksStreamWorks - разработанная фирмой - разработанная фирмой Xing Technology CorpXing Technology Corp. система . система передачи видео и аудио по любой сети (информация на передачи видео и аудио по любой сети (информация на wwwwww..xingtechxingtech..comcom). ). Корпорации Корпорации NBSNBS и и ReutersReuters применяют применяют StreamWorksStreamWorks для передачи для передачи коммерческим подписчикам репортажей с места событий, несколько коммерческим подписчикам репортажей с места событий, несколько WEBWEB--радиостанций используют радиостанций используют StremWorksStremWorks для высококачественной трансляции для высококачественной трансляции музыки (от 14,4 Кб/сек до 44,1 Кб/сек для стерео и 112 Кб/сек для музыки (от 14,4 Кб/сек до 44,1 Кб/сек для стерео и 112 Кб/сек для полноценного видео). полноценного видео). VRMLVRML - - Virtual Reality Modeling LanguageVirtual Reality Modeling Language - язык моделирования виртуальной - язык моделирования виртуальной реальности, подробнее см. работреальности, подробнее см. работ..
elements
window
history
frames
document
anchors
location
forms
links
images
Иерархия объектов JavaScript
Язык Java по синтаксису близок к C++, однако имеет существенные особенности Не поддерживается перегрузка операторов
(вследствие трудности поддержки и относительно редкого использования на практике).
Запрещено множественное наследование (основания подобны вышеприведенным, запрет несколько смягчается возможностью использования унаследованных интерфейсов).
Исключены указатели, являющиеся частой причиной труднолокализируемых ошибок в C++.
Мощь языка Java основана на сочетании четырех его характеристик1. Сетевой осведомленности (network awareness) -
заключается в том, что каждое решение при разработке языка принималось таким образом, чтобы предоставить возможность Java-приложениям обладать сетевыми характеристиками (в применении к InterNet это вылилось в обеспечении гнездового интерфейса низкого уровня - low-level socket interface).
2. Переносимости - возможность исполнения Java-программ на различных аппаратных и операционных платформах.
3. Безопасности - достигается путем сегментации памяти, выгрузки из Сети только классов Java (а не ‘родных’, зависящих от конкретной ОС, методов) и фильтрования всех потенциально опасных требований доступа к системным ресурсам через специальный класс SecurityManager.
4. Объектной ориентации - путем разграничения доступа к объектам путем применения концепций наследования и инкапсуляции.
Расширенный язык разметки XML
XML-документ состоит из двух частей: размеченного документа, отображающего исходную информацию, и декларации средств используемого языка разметки. Эта декларация, называемая таблицей определения типов DTD (Document Type Definition), должна соответствовать общим правилам языка XML, но может содержать объявления элементов, специфичных для некоторого приложения и определяющих используемую разновидность XML. Разновидности XML (словари XML) могут создаваться по мере необходимости, что и оправдывает определение XML как метаязыка.
PHP PHP – это язык сценариев,
выполняющийся на стороне сервера. Он был разработан специально для Web – программирования и в очень короткие сроки приобрел большую популярность. PHP является интерпретируемым языком программирования.
Технология PHP
Проигры-ватель
сценариев PHP
Сервер Web КлиентWebСеть
PHP
Программное обеспечение WWW построено по схеме клиент-сервер.
HTTPHTTP
НТТР используется для НТТР используется для взаимодействия программ-взаимодействия программ-клиентов с программами-клиентов с программами-шлюзами, разрешающими шлюзами, разрешающими
доступ к:доступ к: файловым архивам FTPфайловым архивам FTP системам системам GopherGopher и WAIS и WAIS ресурсам электронной почты ресурсам электронной почты спискам новостей спискам новостей UsenetUsenet
Протокол реализует принцип Протокол реализует принцип "запрос - ответ"."запрос - ответ".
Запрашивающая программа-клиент Запрашивающая программа-клиент инициирует взаимодействие с инициирует взаимодействие с сервером и посылает запрос:сервером и посылает запрос:
метод доступаметод доступа адрес URL адрес URL версию протокола версию протокола сообщение с модификаторами типа сообщение с модификаторами типа
данных данных информация клиента информация клиента
Заголовки протокола Заголовки протокола HTTPHTTP
Заголовки объекта Заголовки объекта AllowAllow Перечисляет поддерживаемые сервером методыПеречисляет поддерживаемые сервером методы Content-EncodingContent-Encoding Способ, которым закодировано тело сообщения, Способ, которым закодировано тело сообщения,
например, с целью уменьшения размеранапример, с целью уменьшения размера Content-LengthContent-Length Длина сообщения в байтахДлина сообщения в байтах Content-TypeContent-Type Тип содержимого и, возможно, некоторые параметрыТип содержимого и, возможно, некоторые параметры ETagETag Уникальный тэг ресурса на сервере, позволяющий сравнивать Уникальный тэг ресурса на сервере, позволяющий сравнивать
ресурсыресурсы ExpiresExpires Дата и время, когда ресурс на сервере будет изменен, и его Дата и время, когда ресурс на сервере будет изменен, и его
нужно получать зановонужно получать заново Last-ModifiedLast-Modified Дата и время последней модификации содержимогоДата и время последней модификации содержимого
Заголовки протокола Заголовки протокола HTTPHTTP
Заголовки ответаЗаголовки ответа AgeAge Число секунд, через которое нужно повторить запрос для Число секунд, через которое нужно повторить запрос для
получения нового содержимогополучения нового содержимого LocationLocation URIURI ресурса, к которому нужно обратиться для ресурса, к которому нужно обратиться для
получения содержимогополучения содержимого RetryRetry--AfterAfter Дата и время или число секунд, через которое нужно Дата и время или число секунд, через которое нужно
повторить запрос, чтобы получить успешный ответповторить запрос, чтобы получить успешный ответ ServerServer Название программного обеспечения сервера, приславшего Название программного обеспечения сервера, приславшего
ответответ
Заголовки запросаЗаголовки запроса AcceptAccept Типы содержимого, которое "понимает" клиент и может Типы содержимого, которое "понимает" клиент и может
воспроизвестивоспроизвести Accept-CharsetAccept-Charset Кодировки символов, в которых клиент может принимать Кодировки символов, в которых клиент может принимать
текстовое содержимоетекстовое содержимое Accept-EncodingAccept-Encoding Способ, которым сервер может закодировать Способ, которым сервер может закодировать
сообщениесообщение HostHost Хост и номер порта, с которого запрашивается документХост и номер порта, с которого запрашивается документ
Заголовки протокола Заголовки протокола HTTPHTTP If-Modified-Since,If-Match,If-None-Match,If-Range,If-Unmodified-SinceIf-Modified-Since,If-Match,If-None-Match,If-Range,If-Unmodified-Since
Заголовки запроса для условного обращения к ресурсуЗаголовки запроса для условного обращения к ресурсу RangeRange Запрос части документаЗапрос части документа User-AgentUser-Agent Название программного обеспечения клиентаНазвание программного обеспечения клиента
Общие заголовкиОбщие заголовки ConnectionConnection Указывает серверу на завершение (Указывает серверу на завершение (closeclose) или ) или
продолжение (продолжение (keepkeep--alivealive) сеанса ) сеанса DateDate Дата и время формирования сообщенияДата и время формирования сообщения
Публикация БД в Интернет со статическим формированием страниц
СУБД
СерверWeb
КлиентWeb
ПреобразовательСеть
БД
HTML
Публикация БД в Internet с использованием технологии CGI
CGI
Сервер Web КлиентWebСеть
БД
СУБД