Лекции по "Веб-технологиям"

Автор работы: Пользователь скрыл имя, 06 Сентября 2013 в 11:17, курс лекций

Краткое описание

Основные понятия Web – технологий.
Историческая справка развития Web - технологий.
Обзор типов Web – приложений.

Содержимое работы - 1 файл

Web-технологии_Краткий конспект лекций.doc

— 698.50 Кб (Скачать файл)

Так же как в JavaScript, переменные вводятся по  мере  необходимости,  а  их тип определяется по контексту. VBScript поддерживает  почти  все  встроенные функции Visual Basic.

Основной недостаток VBScript состоит в  том,  что  его  поддерживает  только Internet Explorer. Это  уничтожает всякую надежду использовать одну и  ту  же страницу как для  пользователей Netscape Navigator, так и  для  пользователей Internet   Explorer.   По   этой   причине   использование   VBScript    для программирования на стороне клиента ограничено.

Java

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

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

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

Язык Java зародился  как  часть  проекта  создания  передового  программного обеспечения (ПО) для различных  бытовых  приборов.  Реализация  проекта  была начата на языке С++, но  вскоре  возник  ряд  проблем,  наилучшим  средством борьбы   с   которыми   было   изменение   самого   инструмента   -    языка программирования. Стало очевидным, что необходим платформо-независимый  язык программирования, позволяющий создавать программы,  которые  не  приходилось бы  компилировать  отдельно  для  каждой  архитектуры  и   можно   было   бы использовать  на  различных   процессорах   под   различными   операционными системами.

Апплеты Java

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

VRML

Язык VRML (Virtual Realty  Modelling  Languagy)  предназначен  для  описания трехмерных изображений и оперирует  объектами,  описывающими  геометрические фигуры и их расположение в пространстве.

Vrml-файл  представляет  собой  обычный  текстовый   файл,   интерпретируемый браузером.  Поскольку  большинство  браузеров   не  имеет  встроенных  средств  поддержки  vrml,  для  просмотра   Vrml-документов   необходимо   подключить вспомогательную программу -  Vrml-браузер,  например,  Live3D  или   Cosmo Player.

Как и в случае с HTML, один и  тот  же  vrml-документ  может  выглядеть  по-разному в  разных  VRML-браузерах.  Кроме  того,  многие  разработчики  VRML-браузеров добавляют нестандартные расширения VRML в свой браузер.

Языки программирования серверов

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

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

Однако  и  для  использования  сценариев  на  стороне  сервера  имеется  три основных препятствия.

- Запуск скриптов на  сервере зачастую требует получения   специальных прав от Web-мастера или системного администратора.

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

- Для тестирования  сценариев для сервера требуется  иметь  собственный WWW-сервер, предпочтительно того же типа, что и промышленный вариант. 

Программирование на стороне сервера в настоящее время  является  необходимым условием для решения широкого спектра задач. Оно позволяет:

   a) получать и  обрабатывать на сервере данные, введенные пользователем при  помощи формы;

   b) динамически  создавать web-документы, не зависящие  ни от платформы,  ни от браузера клиента;

   c) обеспечивать  динамический доступ к данным, находящимся на  сервере,  в  частности, к серверным базам  данных (при таком способе   доступа  HTML- документ автоматически  изменится, как только изменятся   хранящиеся  на сервере данные);

d) использовать серверные  компоненты, предназначенные для  решения типовых задач (таких,  например, как циклическая  смена   рекламных  баннеров  и др.);

e) осуществлять аутентификацию  пользователя;

f) получать информацию  о браузере клиента;

g) создавать и читать  ключики на стороне клиента;

CGI: Технология «клиент-сервер»

CGI -  Common  Gateway  Interface  является  стандартом  интерфейса  (связи) внешней прикладной  программы   с  информационным  сервером  типа  HTTP,  Web сервер.

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

Т.о., программа-шлюз запускается WWW сервером в реальном  масштабе  времени. WWW сервер обеспечивает передачу запроса пользователя шлюзу, а  она  в  свою очередь,  используя средства  прикладной  системы,   возвращает   результат обработки запроса на  экран пользователя.   Программа-шлюз   может   быть закодирована на языках  C/C++,  Fortran,  Perl,  TCL,  Unix  Schell,  Visual Basic, Apple Script.  Как выполнимый  модуль,  она обычно  записывается  в поддиректорий с именем cgi-bin WWW сервера.

SSI (Server Side Includes, включения  на стороне сервера)

SSI (Server Side Includes, включения  на стороне сервера)  -  это   директивы, вставляемые в HTML-код и служащие для передачи указаний серверу.

SSI позволяют "вставлять"  фрагменты одних документов в  другие. Конечно,  это можно сделать  непосредственно в текстовом  редакторе, но  если,  например,  в несколько документов вставляется  один и тот же фрагмент,  к тому  же  часто изменяемый, использовать SSI-вставки много удобнее.

Сервер интерпретирует SSI-директивы и  выполняет  соответствующие  действия. Использование SSI-вставок  позволяет  динамически  формировать  странички  в зависимости от различных  параметров(например, типа браузера).

Преимущества SSI  проявляются  тем  сильнее,  чем  больше  по  объему  сайт, имеющий повторяющиеся  элементы кода на разных страничках.

Для того, чтобы сервер знал, что  страничка  не  обычная,  а  содержит  SSI- директивы, используется специальное расширение: shtml или shtm.  (Вообще-то, конфигурация сервера может быть настроена и на другое расширение,  но  shtml воспринимается всегда (если только на сервере не  отключено применение  SSI вообще).

При просмотре сформированного исходника HTML-файла  пользователь  не  увидит никаких признаков SSI, т.к. браузер получает уже готовый HTML-код.

Первое преимущество SSI с точки зрения дизайнера заключается  в том, что  при таком подходе web-мастеру, занимающимуся поддержкой сайта, можно не  бояться случайно  испортить  дизайн.  Элементы  сложной  верстки  скрыты   за   счет использования SSI, и  поддержка  содержимого  страничек  становится  гораздо более легким и приятным делом. Второе, не менее важное преимущество,  -  это возможность мгновенной замены  дизайна  сайта,  не  требующая  переделывания страничек. Для смены дизайна достаточно переписать SSI-вставки,  формирующие внешний вид сайта.

Язык программирования Perl

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

Язык  Perl  был  создан  для  повышения  эффективности  обработки  текстовых документов. Он ориентирован на  обработку  строк.  В  настоящее  время  язык получил  большое распространение как  инструмент создания исполняемых  модулей WWW-сервера. Существующие  пакеты  расширения  обеспечивают  доступ  к  SQL- серверам непосредственно из Perl-программы. Это позволяет  использовать  его для решения всех задач, возникающих  при  обеспечении  WWW-доступа  к  базам данных. Perl эффективен также при обработке  произвольных  структур  данных: существующих отчетов, списков, карточек в электронном виде.

Хотя CGI-приложения можно  писать практически на любом  языке,  Perl  и  CGI- программирование стали  синонимами  для  многих  программистов. 

-  Perl легко выучить: его синтаксис напоминает другие языки (например С), потому что он «многое прощает», -  при  ошибке  выдается  подробное сообщение, помогающее быстро локализовать проблему.

- Perl способствует быстрой  разработке, так  как  это   интерпретируемый  язык; исходный код не надо компилировать перед запуском.

-  Perl доступен на  многих платформах с минимальными  изменениями.

-  Perl содержит очень  мощные функции для обработки  строк со встроенной в язык  поддержкой поиска и замены  по регулярным выражениям.

-   Perl обрабатывает двоичные данные так же легко, как и текст.

-  Perl  не  требует   четкого  разделения  на  типы:  числа,  строки  и логические  выражения являются обычными  скалярами.

-   Perl  взаимодействует   с  внешними  приложениями  очень  просто  и обеспечивает  собственные функции для работы  с файловыми системами.

PHP

РНР наделен практически  полным  набором  функциональности,  о  которой  (до появления РНР) мог только мечтать  web-программист.  Его  цель  —  позволить максимально  быстро  создавать  динамически  генерируемые  web-страницы.   С  полным основанием можно заявить, что изучение  и использование РНР будет выгодно как начинающим, так и профессиональным программистам.

Основными конкурентами РНР являются технологии  JSP  (Java  Server  Pages  и Java  Scriptlets),  ASP  (Active  Server  Pages),  Perl, SSI  (Server  Side Includes).

Рассмотрим те недостатки,  которые  присущи  указанным  технологиям.  JSP  — достаточно сложный для  изучения и использования  язык.  ASP,  основанный  на синтаксисе  VBScript  (Visual  Basic),  имеет   всего   несколько   десятков собственных функций  и  поэтому  вынужден  использовать  СОМ-объекты;  кроме того, он ориентирован исключительно на  работу  под  Windows.  Perl  —  язык головоломный, и его вольности затрудняют его понимание. SSI позволяет  всего лишь компоновать HTML-страницу  из  нескольких  файлов. 

Основные достоинства  РНР:

- бесплатен; постоянно  совершенствуется; работает  на  UNIX  и  Windows платформах;

- допускает работу  с большинством СУБД;

- имеет широкий набор  функций (более 3 тыс.);

- допускает объектно-ориентированное программирование;

- способен использовать  протоколы HTTP, FTP, ШАР, SNMP, NNTP, РОРЗ, net sockets и другие;

- позволяет выполнять  все операции, что и перечисленные  его конкуренты, и даже работать  с файлами графики. Можно также  запускать  РНР-скрипты как интерпретируемые файлы и компилировать исполняемые приложения  (в ом числе с поддержкой графического интерфейса GTK).

РНР   является   программным продуктом  с  открытым  исходным  кодом,  и  внесение  в  него  улучшений  и дополнений   путем   создания   собственных   модулей   расширения    всегда приветствуется.

ASP

Технология Microsoft ASP представляет собой совокупность  серверных  средств для динамического создания Web-документов.

Активные серверные  страницы (Active Server Pages, ASP), созданные  Microsoft для собственного веб-сервера, сейчас доступны для  многих  серверов.  Сервер ASP  интегрирован  в  веб-сервер  и  не  требует  отдельного  процесса.   Он позволяет программистам совмещать код и  HTML-страницы  вместо  того,  чтобы писать отдельные программы. Для ASP существуют  модули,  позволяющие  делать то   же   самое,   используя   CGI.   ASP   поддерживают   различные   языки программирования, самый популярный из которых Visual Basic, хотя  JavaScript также поддерживается. Кроме того, существует  версия  Perl  от  ActiveState, которую можно использовать в Windows с ASP.

Информация о работе Лекции по "Веб-технологиям"