Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Технології програмування Web

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Интернет загалом і WWW зокрема працює за технології «клієнт-сервер», тобто програмне забезпечення поділяється на клієнтську і серверную частини. Також з-поміж них розділені і функціональних обов’язків. Важливим розуміння моментом і те, що тут клієнта не знає і зобов’язаний знати принципи праці та реалізацію внутрішніх алгоритмів серверу, а сервер не втручається у справи клієнта. Для взаємодії цих… Читати ще >

Технології програмування Web (реферат, курсова, диплом, контрольна)

Міністерство освіти та Украины.

дніпропетровський національний университет.

радіофізичний факультет.

кафедра асои.

Курсова работа.

з дисципліни «Комп'ютерні мережі» на тему.

«Технології програмування Web «.

|Выполнил: |Перевірив: | | | | |студент групи РС-99−1 |доц. каф. АСОИ | |Щукін У. А. |Волковський О.С. | | | | | | | | | | |"____" _________ 2003 р. |"____" _________ 2003 р. |.

Днепропетровск.

Содержание Содержание 2.

Запровадження 3.

Огляд технологій 4.

Мови описи документів 4.

Мова гіпертекстової розмітки HTML 4.

Мова гіпертекстової розмітки XML 6.

Dynamic HTML 8.

Macromedia Flash 8.

Мови програмування клиент-машин 10.

JavaScript 10.

VBScript 11.

Java 12.

VRML 15.

Мови програмування серверів 16.

CGI: Технологія «клієнт-сервер» 16.

Технологія SSI 19.

ISAPI 20.

Мова програмування Perl 21.

PHP 22.

ASP і ASP.NET у складі Microsoft.NET 23.

JAVA-servlets 25.

Пакет Cold Fusion від Macromedia 27.

Технологія ActiveX 28.

Поняття СОМ 28.

Клієнтська технологія ActiveX (Active Desktop) 30.

Серверна технологія ActiveX (Active Server) 31.

Підтримка стану 31.

Заключение

33.

Список використаної літератури 34.

World Wide Web — глобальна комп’ютерна мережу нині містить мільйони сайтів, у яких розміщена різноманітна інформація. Люди отримують доступом до цієї інформації з використання технології Internet. Для навігації в WWW використовуються спеціальні програми — Webбраузери, які полегшують мандрівку безкраїм просторам WWW. Уся інформація в Web-браузере відображається як Web-страниц, які є основний елемент байтів WWW.

Web-страницы, підтримуючи технологію мультимедіа, об'єднують у собі різні види інформації: текст, графіку, звук, анімацію і відео. Від, чи добре і гарно зроблено та чи інша Web-сторінка, залежить багато в чому її успіх у Сети.

Пользователю приємно відвідувати ті Webсторінки, які мають стильне оформлення, не обтяжені надмірно графікою і анімацією, швидко завантажуються і відбиваються з вікна Web-браузера.

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

В своєї курсової роботі зробив спробу з’ясувати, що необхідно знати й уміти до створення Webсторінки, яке програмне забезпечення є інструментарієм створення Web-страниц і його ефективно использовать.

Огляд технологий.

Мови описи документов.

Мова гіпертекстової розмітки HTML.

World Wide Web, чи, щось саме всесвітнє павутиння, WWW становить основну компоненту глобальної комп’ютерну мережу Інтернет. Зародившись ще у 60-х рр., Інтернет довгий час використовувалася лише вузьке коло спеціалістів обміну електронною поштою. Мережа скеровувалась операційній системою UNIX — фінансування наукових цілей це підходило, але досить складний текстовий інтерфейс UNIX «a істотно обмежував масштаби застосування мережевих технологій. Роком народження World Wide Web вважається 1989 — нинішнього року було винайдено мову, що став основним мовою webдокументів — це мову — HTML (HyperText Markup Language — мову розмітки гипертекста).

Автором мови HTML є Тім Бернерс-Лі (Tim Berners-Lee), випускник Оксфордського університету, працював у той час за контрактом у Женеві, в Європейської лабораторії фізики елементарних частинок (CERN, Conseil Europeen pour la Recherche Nucleaire) консультантом по програмному забезпеченню. CERN — досить велика організація, і тому, щоб краще орієнтуватися у її структурі, не зберігати у пам’яті даних про великому кількості проектів, посадових осіб тощо., Тім Бернерс-Лі розробив для свого власного користування програму Enquire, з урахуванням якої через кілька років на лабораторії було створено свого роду інформаційне простір. Програма Enquire дозволяла здійснювати так званий «нелінійний «пошук документів — тобто. переходити від однієї документа до іншому без звернення до змісту чи справочнику.

Язык HTML лежить в основі технології гіпертексту. Гіпертекстову документ містить звані гиперссылки.

Текстовые гіперпосилання зазвичай виділяються кольором і підкресленням, це необов’язково. Гіперпосилання дозволяють користувачеві негайно можливість перейти до потрібному документа, незалежно від місця його фізичного розташування. Це істотно полегшує пошук інформації, розкиданої з усього Земному кулі. Технологія гіпертексту дозволила зв’язати всю сукупність опублікованих у Інтернет документів мають у єдину систему — WWW.

Язык розмітки документів — це набір спеціальних інструкцій, званих тэгами, виділені на формування у будь-якій структури та визначенням відносин між різними елементами цієї структури. Теги мови, чи, як його іноді називають, управляючі дескриптори, в документах якимось чином кодуються, виділяються щодо основного вмісту документи й служать як інструкцій для програми, виробляючої показ вмісту документа за клієнта. У перших системах для позначення цих команд використовувалися символи ««, всередині яких поміщалися назви інструкцій та його параметри. Зараз я такої спосіб позначення тэгов є стандартным.

Когда восени 1991 року Інтернет почув позивні нову технологію, назва якої легко вмістилося у три літери, майже хто б міг уявити, що завоювання її виявляться настільки глобальними. Популярність World Wide Web і невід'ємною її частки, HTML, безумовно, спричинилася до підвищеної зацікавленості до систем гіпертекстової розмітки документів. Хоча поняття гіпертексту було запроваджено В. Бушем ще 1945 року і від 1960;х років почали з’являтися перші докладання, використовують гіпертекстові дані. Використання гіпертекстової розбивки текстового документа у сприйнятті сучасних інформаційних системах багато в чому пов’язана з тим, що гіпертекст дозволяє створювати механізм нелінійного перегляду інформації. У цих системах дані видаються над вигляді безперервного потоку текстовій інформації, а набором взаємопов'язаних компонент, перехід якими здійснюється за допомоги гиперссылок.

Мова HTML перестав бути власне мовою програмування; це є засіб описи структури документа, його стилю, і зв’язків його коїться з іншими документами. Для перегляду Web-документов використовуються спеціальні програми — так звані браузери (анг.: to browse — 1) пастися, общипувати пагони; 2) читати, займатися безладно, уривками.) Узагалі-то, можливості браузерів багато ширше, але ще обмежимося їх визначенням як засобом перегляду web-документов. Саме браузерам Інтернет зобов’язана своєї популярностью.

Создание мови HTML 1989 року полегшило обміну інформацією не більше лабораторії CERN, але це не вирішувало проблем, пов’язаних обміном інформацією співробітників лабораторії та його колегами, які працювали в різних країнах. А, щоб після такої обмін можливий, потрібно було створити децентралізовану інформаційну систему, засновану певному стандарті обміну даними. Таким стандартом став створений Тимом-Бернерсом Лі 1990 року протокол HTTP (HyperText Transfer Protocol, протокол передачі гіпертекстових файлов).

HTML є спрощеної версією стандартного спільної мови розмітки — SGML (Standart Generalised Markup Language), який затвердили ISO в ролі стандарту ще 80-ті роки. Її призначений до створення інших мов таки розмітки, він визначає припустимий набір тэгов, їх атрибути і внутрішню структуру документа. Контроль за правильністю використання дескрипторів здійснюється за допомогою спеціального набору правил, званих DTDописаниями (более докладно про DTD ми ще поговоримо трохи згодом), що використовуються програмою клієнта при розборі документа. До кожного класу документів визначається свій набір правил, що описують граматику відповідного мови разметки.

С допомогою SGML можна описувати структуровані дані, організовувати інформацію, що є в документах, представляти цю інформацію в деякому стандартизованном форматі. Однак у виду деякою свою складність, SGML використовувався, переважно, для описи синтаксису інших языков (наиболее відомим із яких є HTML), та деякі докладання працювали з SGMLдокументами напрямую.

Гораздо простіший і зручний, ніж SGML, мову HTML дозволяє визначати оформлення елементів документи й має якийсь обмежений набір інструкцій — тэгов, з яких здійснюється процес розмітки. Інструкції HTML, насамперед, призначені керувати процесом виведення вмісту документа на екрані программы-клиента визначають цим самим спосіб подачі документа, але з його структуру. Як елемента гіпертекстової бази даних, описуваної HTML, використовується текстовий файл, котрі можуть легко передаватися через мережу з допомогою протоколу HTTP. Протокол HTTP дозволив передавати через мережу HTML-документы.

Появилась можливість організувати доступ численних користувачів (клієнтів) до HTML-документам, які є на про серверах (анг.: to serve — служити, обслуговувати). Зрозуміло, що й комп’ютері користувача, від якого відбувається звернення до сервера, і на сервері має бути встановлено спеціальне програмне забезпечення: — сервер повинен як зберігати документи, а й уміти швидко знаходити їхні на запит клієнта;- клієнт (браузер) повинен розпізнати HTML-код і візуалізувати його, явити у легко сприйманому виде. Тим-Бернерс Лі написав перший браузер (названий ним World Wide Web) і створено перший web-сервер (info.cern.ch). У 1991 року це програмне забезпечення стала доступною досить широкого кола користувачів Інтернету. Він також розробив схему адресації до web-документам до Інтернету. Тим-Бернерс Лі назвав її Universal Resource Identifier (URI, універсальний ідентифікатор ресурсів). (Нині її назвают URL—Uniform Resource Locator, уніфікований покажчик ресурсу.) Отже, розробка мови HTML, протоколу HTTP, web-сервера, браузери і системи адресації (URI) стали основою розвитку мережі всесвітнього павутиння (WWW).

Відсутність єдиного стандарту, якого дотримувалися розробники браузерів і web-серверов, призвело б до з того що неможливо було створити сайту, який однаково був би у різних браузерах. Довелося під кожен браузер писати свій сайт.

Во запобігання того з ініціативи Тима-Бернерса Лі у липні 1994 року в базі Массачуссетского технологічного інституту (Massachussets Institute of Technlogies, MIT) створили World Wide Web consortium (чи навіть W3C) (Тим-Бернерс Лі очолив його). Основна мета W3C — забезпечити як і велику сумісність програмного забезпечення web-публикаций. W3C не є адміністративним органом, це щось на кшталт форуму розробки компромісних рішень у сфері web-технологій. Консорціум приймає на розгляд будь-які нові проекти та пропозиції. Специфікації, розроблені W3C, не обов’язкові до застосування, але консорціум проводить роботу з їхній пропаґанді. HTML ратифікувала World Wide Web Consortium.

Язык гіпертекстової розмітки XML.

Зa стислі терміни свого офіційного існування мову XML привернула до собі вже багато уваги з боку розроблювачів і користувачів Інтернет. Попри те що, що XML дуже молодий (міжнародна організація W3C затвердила специфікацію «Extensible Markup Language (XML) 1.0 «на початку лютого 1998 р.), вже нині з’являються нову мову, створені з урахуванням XML, виникають численні Web-сервера, використовують цю технологію для організації що зберігається ними інформації. Світ Інтернет можна в вкотре перетворюється, і ми можемо стати учасниками цього процесу вже сегодня.

Навіщо потрібна нова мову разметки?

Самый популярний нині мову гіпертекстової розмітки — HTML, створили спеціально в організацію інформації, розподіленої у мережі Інтернет, і є одним із ключових складових технології WWW. З використанням гіпертекстової моделі документа спосіб подачі різноманітних інформаційних ресурсів у мережі став більш упорядкований, а користувачі отримали зручний механізм пошуку істини та перегляду потрібної информации.

Однако сучасні докладання потребують у мові уявлення даних на екрані клієнта, а й у механізмі, що дозволяє визначати структуру документа, описувати що їх містить елементи. HTML має нескладним набором команд і геть успішно справляється завдання описи текстовій інформації та відображенням в екрані програми перегляду — броузера. Проте самі що відобразяться дані неможливо пов’язані з тими тэгами, що використовуються форматування, тому в программ-анализаторов немає можливості використовувати теги HTML на допомогу пошуку потрібних нам фрагментів документа. Тобто. зустрівши, наприклад, таке описание.

rose,.

программа перегляду знатиме, яким кольором відобразити текст, що міститься всередині тэгов і, мабуть, відобразить його правильно, але їй байдуже, де документа зустрівся цей тэг, у які інші теги укладено поточний фрагмент, чи існують спрямовані на нього фрагменти, правильно чи побудовані стосунки між об'єктами. Таке «байдужість «до структури документа призводить до того, що пошук чи аналізують інформацію усередині нього нічим нічого очікувати відрізнятиметься від роботи зі суцільним, не розбитим на елементи текстовим файлом. І це, як відомо, не найефективніший спосіб роботи з информацией.

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

Подводя підсумок всього сказаного, можна стверджувати, що HTML вже нині не задовольняє повною мірою вимогам, які висуваються сучасними розробниками мови такого роду. І змінюють було запропоновано новий мову гіпертекстової розмітки, потужний, гнучкий, і водночас із цим, зручний мову XML. У чому є його достоинства?

XML (Extensible Markup Language) — це мову розмітки, описує цілий клас об'єктів даних, званих XMLдокументами. Її використовується як засіб для описи граматики інших і контролю над правильністю складання документів. Тобто. сам собою XML зовсім позбавлений ніяких тэгов, виділені на розмітки, він визначає порядок їх створення. Отже, якщо, наприклад, ми вважаємо, що з позначення елемента rose у документі необхідно використовувати тэг ;, то XML дозволяє вільно використовувати визначається нами тэг і ми можемо включати у документ фрагменти, подібні следующему:

rose.

Набор тэгов то, можливо легко розширено. Якщо, припустимо, хочемо також вказати, що описування квітки має за змістом йти всередині описи оранжереї, де він цвіте, то просто задаємо нові теги і вибираємо порядок їх следования:

rose.

Если хочемо посадити туди ще кілька квіточок, маємо внести такі изменения:

rose.

tulip.

cactus.

Как видно, процес створення XML документа дуже проста і жадає від нас лише базових знань HTML й розуміння тих завдань, які хочемо виконати, використовуючи XML як мовою розмітки. Отже, у розробників з’являється можливість визначати власні команди, які дозволяють найефективніше визначати дані, які у документі. Автор документа створює його структуру, будує необхідні зв’язку між елементами, використовуючи ті команди, які задовольняють його вимогам, і домагається подібного типу розмітки, що слід йому для операцій перегляду, пошуку, аналізу документа.

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

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

Dynamic HTML.

До появи версій 4.0 Internet Explorer і Netscape Navigator сценарії могли змінювати утримання і зовнішній вигляд сторінок, лише використовуючи метод write. document за мінімального завантаження страницы.

Любой сценарій, що здійснюється пізніше, може посилати команди броузеру, такі як запит на завантаження нової сторінки, висновок вікна попередження чи зміна значення поля форми, але тільки сторінка завантажена, сценарій неспроможна змінити HTML-код. Які ж зробити Webсторінки інтерактивними, якщо їх змінити у відповідь дії пользователя?

Динамический HTML, частково реалізований в Netscape 4 і ставляться більш ступеня в Internet Explorer 4, усуває ці обмеження. З використанням динамічного HTML сценарії можуть вставляти блоки HTML, видаляти і заміняти їх або змінювати властивості об'єктів після відображення сторінки на екрані. Броузер автоматично оновлює нових властивостей і (чи) новий HTML-код. Динамічний HTML будується двома принципах.

• Объектная модель документа (DOM) описує спосіб організації та назви об'єктів в броузері, і навіть визначає, які об'єкти й поліпшуючи властивості може бути змінено й які значення можуть принимать.

• Подієва модель описує спосіб передачі управління сценаріями — що насамперед посилають сценарії на выполнение.

Macromedia Flash.

World Wide Web (всесвітнє павутиння) розвивається дуже стрімко. Традиційні веб-сайти (Web-sites) зі статичними інформаційними сторінками не приваблюють як раніше увагу кінцевих користувачів. Тому Web-дизайнеры і розробники намагаються надати своїм сторінкам невідпорний вид, вводячи графіку і файли анімаційного формату GIF. Незважаючи те що, що «застосування графіки в традиційних форматах стискування зображень GIF, JPEG і PNG надає сайту певний ефект, тим щонайменше, завантаження таких сторінок може забрати чимало часу через великі розмірів графічних файлів. Альтернативним інструментом створення анімації є програмний продукт— Macromedia Flash, який допоможе домогтися поставлених при Webрозробці целей.

По порівнянню коїться з іншими графічними додатками, призначеними публікації успіхів у Web чи виведення в файл, Flash має багатьма перевагами, такими, как:

. Застосування векторної (vector) графіки, що насправді є ряд математичних формул, що описують розмір, колір і місце розташування форми. Векторна графіка складається з ліній і кривих, тоді як растрова (bitmapped) — із невеличких точок растра, чи пикселей (pixels). Застосування математичних формул головне перевагою відображення графіки і збереження невеликого розміру файлів, що особливо важливо задля Web.

. Можливість стискування анімації, графіки і звуку. Таке стиснення файла обумовлює властивість потоковой передачі (streaming), що дозволяє відображати сайт в Web-броузере до завантаження його вмісту. Це означає, що одне векторна графіка сайту відображається, тоді як інша графіка, звуку й анімація досі загружаются.

. Інтерактивність у Flash може складатися зі найрізноманітніших свойств.

Крім необмежених можливостей застосування простий графіки, анімації чи великих заголовків, у будь-якій об'єкт чи область сайту можна вводити повноцінні навігаційні властивості: кнопки, меню чи фрагменти анімації, з допомогою яких кінцевий користувач переміщається сайтом. А задаючи дії (actions), можна інтерактивні фільми. До сформування інтерактивних елементів управління в Flash надається мову створення сценаріїв — ActionScript.

. Зображення і тест, розроблені у Flash, завжди відбиваються зрозуміло і чітко, що ж зумовлено векторної графикой.

. Flash допомагає користувачеві малювати. Зокрема, Flash може розпізнавати основні геометричні форми у процесі їх створення. У цьому вона заміняє недбало намальовану форму правильної геометричній формою, яку, як очікується, користувач намагається намалювати. Наприклад, якщо швидко намалювати овал чи окружність, створивши круглу форму, Flash зробить цій формі більш плавної і круглої, довівши його до ідеального овалу чи окружності. З іншого боку, Flash допомагає створювати прямі і плавні линии.

В склад Flash входить інструмент, що створює основу більшість якісних Flash-фильмов. Цей інструмент — ActionScript — подієвокерований мову, вмонтований у Flash. ActionScript робить ваші сторінки інтерактивними. Можете реагувати на події з мишки чи з клавіатури, можете виконати будь-які дії при програванні певного кадра.

Для здобуття права опанувати ActionScript повною мірою, бажано вже мати досвід програмування (переважно на З++, JavaScript, etc.). Проте однією з достоїнств мови Flash і те, що ви повинні бути професіоналом у Flash, чи цілком знати ActionScript, щоб писати на ньому якісний код. Можете використовувати лише ті можливості мови, які вважаєте необхідні своєї работы.

Мови програмування клиент-машин.

JavaScript.

Web, як гіпертекстову систему, так можна трактувати із двох точок зору. По-перше, як сукупність відображуваних сторінок, пов’язаних гіпертекстовими переходами. По-друге, кaк безліч елементарних інформаційних об'єктів, складових що відобразяться сторінки (текст, графіка, мобільний код тощо.). У разі безліч гіпертекстових переходів сторінки — це таке ж інформаційний фрагмент, як і вбудована до тексту картинка.

При другому підході гіпертекстова мережу визначається на безлічі елементарних інформаційних об'єктів самими HTML-страницами, що й виконують роль гіпертекстових зв’язків. Такий підхід більш продуктивний з погляду побудови відображуваних сторінок «на льоту «з готових компонентов.

При генерації сторінок на Web виникає дилема, що з архітектурою «клієнт-сервер ». Сторінки можна генерувати як у боці клієнта, і за серверу. Останнє реалізується механізмом підстановок на боці серверу (Server Site Includes). Компанія Netscape поширила в 1995 року механізм управління сторінками і клієнта, розробивши мову програмування JavaScript.

Таким чином, JavaScript — це мову управління сценаріями перегляду гіпертекстових сторінок Web за клієнта. Якщо бути точнішим, то JavaScript — це мову програмування за клієнта. Liveware, прабатько JavaScript, є способом підстановок за серверу Netscape. Проте, найбільшу популярність JavaScript забезпечило програмування за клиента.

К можливостям JavaScript можна, наприклад, віднести следующее:

• відображати изменяющиеся дані, такі як час чи дата;

• програмувати змінне вміст у залежність від дати, броузера користувача чи інших условий;

• змінювати зовнішній вигляд елементів сторінки, якщо користувач клацнув мишею чи провів курсор миші над элементом.

Для мови високого рівня JavaScript має досить сильними можливостями. Він дозволяє працювати лише на рівні машинних кодів, проте ви отримуєте доступ до багатьох можливостям броузерів, Web-страниц, котрий іноді системи, у якому працює броузер. На відміну від Java™ або з, програми на JavaScript уникають компіляції, а вашому броузеру вийде завантажувати віртуальну машину до виконання програмного коду. Программируй і загружай!

JavaScript також у объектно-ориентированной архітектурі, нагадує Java чи З++. Такі можливості мови, як конструктори чи успадкування з урахуванням прототипів, додають в схему розробки нового рівня абстракції, що сприяє багаторазовому використанню програмного кода.

Одна з головних причин, через яку Web-разработчики прийняли JavaScript, — можливість виконання за клієнта багатьох функцій, які раніше виконувалися виключно за серверу. Кращим прикладом є перевірка форм. Програмісти старої школи ще пам’ятають, що кілька тому для перевірки користувальницького входження у формах HTML доводилося пересилати інформацію на Web-сервер і передавати її сценарієм CGI, що й проходила перевірка запроваджених данных.

Если дані не містили помилок, сценарій CGI продовжував роботу. Проте за виявленні помилок сценарій повертав користувачеві повідомлення з описом проблеми. Хоча це рішення працює, уявіть, скільки зайвого клопоту при цьому відбувається. Для передачі форми необхідний спеціальний запит HTTP від серверу. Після пересилки даних у Мережі доводиться наново виконувати сценарій CGI. Цей процес відбувається повторюється щоразу, коли користувач допускає помилку під час заповнення форми. Користувач дізнається про помилку лише по тому, як повідомлення про помилку повернеться до нему.

Но ось за сцені з’являється JavaScript. Тепер елементи форми можна перевірити доти, як користувач передасть інформацію Web-серверу. Це приводить до зменшення кількості транзакцій HTTP, і навіть помітному зниження ймовірності помилки при повторному заповненні форми. З іншого боку, JavaScript дозволяє читати і записувати cookie — колись війни операція виконувалася виключно засобами Web-сервера до роботи з заголовками.

Коротко про деякі особливостях JavaScript.

Тэг повідомляє броузеру, що в HTML розміщений код JavaScript. Тэг відміняє дію. теги повідомляють броузерам, які що неспроможні інтерпретувати і, що рядки коду слід розглядати, як коментарі. Подвійна навкісна риса (//) перед тэгом —> - знак коментарю у мові JavaScript; ж без нього JavaScript інтерпретує —> як помилковий оператор.

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

При суворої типізації даних кожна змінна має сам і лише одне тип даних, яка може бути змінено. Оголошене цілим залишиться цілим завжди, оголошене рядком залишиться рядком завжди. За слабкої типізації даних, як і JavaScript, ви можете помістити будь-яке значення на будь-яку зміну, і змінна прийме необхідний тип данных.

Document.write — метод, який прописує HTML в Web-страницу як із програмуванні вручную.

Каждый JavaScript-оператор повинен закінчуватися точкою з коми. Відсутність точки з коми JavaScript вважає помилкою. Логічні висловлювання би мало бути укладено в круглі дужки, а блоки операторів — в фігурні скобки.

JavaScript використовує знак == як логічний оператор еквівалентності і знак = як оператор присвоювання. Спроба перевірки використанням знака рівності (=) — друга причина помилок в JavaScript.

VBScript.

У у відповідь поява JavaScript Microsoft випустила версію свого популярного мови програмування Visual Basic. У цілому нині VBScript робить те саме, що JavaScript, лише програмний код дуже нагадує Visual Basic.

Visual Basic Script — підмножина мови Visual Basic. VBScript дозволяє виконувати завдання, пов’язані з Internet, саме створювати сценарії (чи скрипти) управління об'єктами (кнопками, списками, спадаючими меню тощо. буд.) на Web-страничках. З допомогою VBScript можна швидко створювати власні сторінки і навіть писати гри. І весь цей розміщається всередині HTML-документа.

Коротко про деякі особливостях VBScript.

VBScript відрізняється від JavaScript следующим:

• наприкінці оператора не ставиться точка з запятой;

• знак рівності використовують як для присвоєння значень змінним, так й у здійснення операції сравнения;

• блоки операторів виділяються не фігурними дужками, а парами ключових слів if… endif, do… loop, і while… wend.

Так само, як JavaScript, перемінні вводяться за необхідності, які тип визначається по контексту. VBScript підтримує майже всі вбудовані функції Visual Basic. На Web-страницах VBScript виглядає наступним образом:

Теги та практично таку ж, як і зараз, а мову окреслюється VBScript. Теги — ті ж, але не матимуть знака коментарів //.

Основной недолік VBScript у тому, що його підтримує лише Internet Explorer. Це знищує будь-якої надії використовувати те ж сторінку як користувачів Netscape Navigator, так користувачів Internet Explorer. Через це використання VBScript для програмування за клієнта ограничено.

Java.

Створення мови Java — одне із найбільш значних кроків уперед, у області розробки середовищ програмування протягом останніх 20 років. Мова HTML був необхідний статичного розміщення сторінок у «Всесвітньої павутинні» WWW (World Wide Web). Мова Java знадобився для якісного стрибка в створенні інтерактивних продуктів для мережі Internet.

Три ключових елемента об'єдналися в технології мови Java і її в корені відмінній від України всього, існуючого сьогоднішній день.

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

. Java вивільняє міць объектно-ориентированной розробки додатків, поєднуючи простий і знайомий синтаксис з надійної і тому зручною у роботі середовищем розробки. Це дозволяє широкого кола програмістів швидко створювати нові програми розвитку й нові апплеты.

. Java надає програмісту багатий набір класів об'єктів для ясного абстрагування багатьох системних функцій, використовуваних під час роботи з вікнами, мережею й у виводу-введення-висновку. Ключова риса цих класів у тому, що вони забезпечують створення незалежних від використовуваної платформи абстракцій для широкого спектра системних интерфейсов.

История создания.

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

Апплеты Java.

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

Именно помітні Webсторінки з анімацією залучили більшість ранніх прихильників мови Java. Оскільки користувачі не відразу змогли повністю освоїти найбільш революційні аспекти Java, цю мову часто рівнявсь з іншими технологіями для завантаження динамічних зображень і простого взаємодії з Web-клиентами.

Революционный мову программирования.

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

. простим — його мають легко використовувати усі разработчики.

. ясним — розробники повинні без великих зусиль вивчити Java.

. объектно-ориентированным — він використовує всі переваги сучасних методологій розробки ПЗ проведено та адресований написання розподілених клиент-серверных приложений.

. многопоточным — задля забезпечення високої продуктивності додатків, виконують одночасно багато дій (наприклад, в мультимедійних системах).

. интерпретируемым — для переносимості й більшої динамичности Язык мав втілювати такі якості: простоту й потужність, безпеку, об'єктну орієнтованість, надійність, інтерактивність, архітектурну незалежність, можливість інтерпретації, високу продуктивність і легкість до вивчення. Навіть будь-коли напишете жодного рядка мовою Java, знати про його можливостях дуже корисно, оскільки перелічені вище властивості мови надають динаміку сторінкам Всесвітньої паутины.

. Простота і мощь После освоєння основних понять объектно-ориентированного програмування ви швидко навчитеся програмувати на Java. Нині є багато систем програмування, пишаються тим, що мені одному й тому самі цілі можна досягнути десятком різних способів. У мові Java достаток рішень відсутня — на вирішення завдання ви буде зовсім небагато варіантів. Прагнення простоті найчастіше зумовлювало створенню неефективних і невиразних мов типу командних інтерпретаторів. Java до таких мов не належить — для Вас вся потужність ОВП і бібліотек классов.

Безопасность.

У популярної літературі нашого часу, якщо заходить мова про Internet, стало модної темою обговорення питань безпеки. Люди впевнені, що використання Інтернет у комерційної діяльності рівносильне написання номери своєї кредитної картки на стінці телефонної будки. Одне з ключових принципів розробки мови Java був у забезпечення захисту від несанкціонованого доступу. Програми на Java що неспроможні викликати глобальні функції і реально отримувати доступом до довільним системним ресурсів, що забезпечує в Java рівень безпеки, недоступний й інших языков.

. Объектная ориентированность Забавно спостерігати, як численні нові діалекти старих мов безапеляційно з’являються объектно-ориентированными. Бо за розробці мови була відсутня важка спадковість, для реалізації об'єктів був обраний зручний прагматичний підхід. Розробники Java намагалися витримати розумний компроміс між моделлю пуристів — «все є об'єктами», і моделлю хакерів — «іди і з дороги». Объектная модель в Java проста і легко розширюється, до того ж час, заради підвищення продуктивності, числа та інші прості типи даних Java є объектами.

. Надежность.

Java обмежує Вас у кількох ключових областях отже сприяє виявлення помилок на ранніх стадіях розробки програми. У той час у ній відсутні чимало джерел помилок, властивих іншим мовам програмування (сувора типізація, наприклад). Більшість використовуваних сьогодні програм «відмовляють» на одній із двох ситуацій: при виділенні пам’яті, або за виникненні виняткових ситуацій. Java фактично знімає обидві ці проблеми, використовуючи складальник сміття для звільнення незайнятою пам’яті і вбудовані об'єктно-орієнтовані кошти на обробки виняткових ситуаций.

. Интерактивность.

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

. Незалежність від архітектури ЭВМ Вопрос про довговічності і переносимості коду важливіше релігійних війн між ПК і Макинтошами. Творці Java наклали мовою і середу часу виконання кілька жорстких вимог, котрі з справі, а чи не на словах дозволяють, якось написавши, завжди запускати програму місці й у час (де існує віртуальна Java-машина — броузеры усім платформах, OS/2, Netware).

. Інтерпретація плюс висока производительность Необычайная здатність Java виконувати свій код будь-якою з підтримуваних платформ досягається тим, що її програми транслюються на якусь проміжне уявлення, зване байт-кодом (bytecode). Байт-код, в своє чергу, може інтерпретуватися у будь-якій системі, яка має середовище часу виконання Java. Більшість ранніх систем, у яких намагалися забезпечити незалежність від платформи, мало величезним недоліком — втратою продуктивності (Basic, Perl). Попри те що, що в Java використовується інтерпретатор, байт-код легко перекладається у «рідні» машинні коди (Just In Time compilers) «на льоту». У цьому досягається дуже високий продуктивність (Symantec JIT вмонтований в Netscape Navigator).

. Простота изучения Язык Java, хоч і складніший ніж мови командних інтерпретаторів, все-таки незмірно простіше з вивчення, ніж інші інші програмування, наприклад З++. Риси мови стануть здаватися вам природним шляхом для розв’язання тих чи інших завдань й вони сприятимуть відпрацюванні хорошого стилю програмування. Оскільки объектная модель в Java одночасно проста і виразна, ви скоро освоїтеся з объектно-ориентированным стилем створення программ.

. Багата объектная среда Среда Java — це щось значно більше, ніж просто мову програмування. У неї вмонтований набір ключових класів, містять основні абстракції реального світу, з кому доведеться мати справу вашим програмам. Основою популярності Java є вбудовані классы-абстракции, зробили його мовою, справді незалежною від платформи. Бібліотеки, подібні MFC/COM, OWL, VCL, NeXTStep, Motif і OpenDoc чудово діють у своїх платформах, але сьогодні головною платформою стає Internet.

VRML.

Мова VRML (Virtual Realty Modelling Languagy) призначений для описи тривимірних зображень і оперує об'єктами, описывающими геометричні постаті та його розташування в пространстве.

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

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

Существует чимало VRML-редакторов, роблять зручніше та швидше процес створення Vrml-документов, проте нескладні моделі, аналізовані у цій статті, можна створити з допомогою найпростішого текстового редактора.

Мови програмування серверов.

З допомогою сценаріїв для серверу можна отримати роботу доступом до файлам, баз даних, і іншим ресурсів, збереженим на сервері, і навіть до централізованим ресурсів серверу, таких як електронна пошта чи факс-служба.

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

Однако для використання сценаріїв за серверу є три основних препятствия.

• Запуск скриптов на сервері найчастіше потребує отримання спеціальних прав від Web-мастера чи системного администратора.

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

• Для тестування сценаріїв для серверу потрібно мати собственный.

WWW-сервер, переважно тієї самої типу, як і промисловий вариант.

Программирование за серверу нині є необхідною передумовою рішення широкого спектра завдань. Воно позволяет:

a) діставати й опрацьовувати на сервері дані, запроваджені користувачем з допомогою формы;

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

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

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

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

f) одержувати інформацію про браузері клиента;

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

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

Багато World Wide Web додатків грунтується на використанні зовнішніх програм, керованих Web сервером. Використання даних програм дозволяє будувати Web докладання з динамічно оновлюваної інформацією, що зберігається у базах даних чи генерирующейся залежно від бизнес-правил розв’язуваних завдань. Для зв’язок між Web сервером і викликуваними програмами широко використовується Common Gateway Interface (CGI), має реалізації як для Windows-ориентированных програм, так додатків, функціонуючих серед Unix.

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 сервера.

Интернет загалом і WWW зокрема працює за технології «клієнт-сервер», тобто програмне забезпечення поділяється на клієнтську і серверную частини. Також з-поміж них розділені і функціональних обов’язків. Важливим розуміння моментом і те, що тут клієнта не знає і зобов’язаний знати принципи праці та реалізацію внутрішніх алгоритмів серверу, а сервер не втручається у справи клієнта. Для взаємодії цих частин розроблений спеціальний протокол (у приватному разі — протокол HTTP), і всі взаємодія між клієнтом і сервером винятково власним в рамках даного протоколу. Вашому броузеру однаково, яке програмне забезпечення слід за сервері, яка операційна система, де фізично лежать запитувані документи на сервері (і взагалі, вони ж і генеруватися на льоту через спеціальні програми). Сервер також втручається у справи вашого броузера, серверу геть байдуже, що зробить клієнт з переданої інформацією, як її відображатиме, збереже на диску чи проігнорують — серверу доти діла немає. Взаємодія імені клієнта й серверу відбувається за принципом «запит-відповідь». Клієнт посилає запит, сервер обробляє його й посилає відповідь (рис. 1.1- 1):

Рассмотрим детальніше все етапи сполуки за протоколом HTTP:

1. Формування запиту клієнтом. (Броузер формує запити з URL, набраного користувачем, з щиглика на засланні або з наведених даних формы.).

2. Установка з'єднання з сервером. (Якщо встановити з'єднання вдасться, то, на цьому HTTP-транзакция закінчиться і клієнт видасть користувачеві повідомлення про ошибке.).

3. Посилка запиту й чекання відповіді серверу. (Усі, що потрібно від клієнта, це запит був у коректному формате.).

4. Сервер приймає запит. (Про це та наступний етап клієнту щось известно.).

5. Сервер обробляє запрос.

6. Генерація ответа.

7. Прийом відповіді клиентом.

8. Розрив соединения.

9. Обробка даних клієнтом. (Висновок чи збереження данных.).

Обычно під запитом до сервера розуміється URL (це уніфікована форма «замовлення» даних на сервері). До власне URL ще «додаватися» деякі дані, найчастіше це з форм (згадайте, як ви вже вводите ключовим словом в пошуковику). Формування HTTP-запроса буде детально розглянуто у одному з наступних уроков.

При установці з'єднання з сервером спочатку відбувається трансляція символьного доменного імені, такого, як internet в IP-адрес, а потім реєструють безпосередньо створення TCP/IP-соединения з цим IP. Коли дані HTTP-запроса послані серверу, клієнт просто очікує, поки прийде ответ.

Пока немає звернень від клієнтів, сам HTTP-сервер просто «спить» чекаючи запитів. Коли клієнт встановлює з'єднання, сервер «прокидається» і, прийнявши дані запиту, вдається до їх опрацюванні. Що саме сервер робить із запитом — відомо лише самому серверу. Єдиний результат всіх хитрих маніпуляцій — це видача відповіді, якого і очікує клиент.

После того як сервер видав відповідь, він розриває з'єднання і знову «поринає у сон». Природно відзначити, у разі виникнення помилки HTTP-транзакция може призвести до будь-якою з цих этапов.

Все дев’ять етапів HTTP-соединения показані на рис. 1.2.

Если документ не знайдено або якщо для доступу до нього в вас немає прав (доступ до ресурсу можна обмежувати), то видається код помилки. Якщо ж все нормально, то інформація, у документі, включаючи супутні даних про його типі, видається як ответа.

Схема взаємодії «клієнт-сервер» для випадку, коли URL свідчить про CGIоброблювач, показано на рис. 1.3.

Технология SSI.

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

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

Сервер інтерпретує SSI-директивы і виконує відповідні дії. Використання SSI-вставок дозволяє динамічно формувати сторінки в залежності від різних параметров (например, типу браузера).

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

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

Для здобуття права вказати серверу, який блок потрібно вставити у якому місці сторінки, використовується спеціальна форма запис у вигляді комментария:

| |.

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

Первое перевагу SSI з погляду дизайнера у тому, що з такий підхід web-мастеру, занимающимуся підтримкою сайту, годі й боятися випадково зіпсувати дизайн. Елементи складної верстки приховані з допомогою використання SSI, й підтримка вмісту сторінок стає набагато легшим і приємним справою. Друге, щонайменше важливе перевагу, — це можливість миттєвою заміни дизайну сайту, яка потребує перероблювання сторінок. Для зміни дизайну досить переписати SSI-вставки, формують зовнішній вигляд сайта.

Не чи є SSI альтернативою CGI? Швидше, це доповнення (і дуже цінне) до CGI, надає web-программисту безліч удобств.

ISAPI.

Подібно CGI, специфікація ISAPI (Internet Server Application Programming Interface) визначає правила взаємодії між Web-сервером і додатковими програмами. Щоб зрозуміти, навіщо знадобився альтернативний підхід до створення програм, виконуються на сервері, ми поговоримо про перевагах та недоліках стандарту CGI.

Несомненным перевагою CGI є універсальність. CGI-сценарии можуть бути написані говорять різними мовами й виконуватиметься за комп’ютерами з різноманітною архітектурою. Якщо за написанні сценарію ви врахували всіх правил, то можете бути впевнені, що вами програма буде коректно взаємодіяти із кожним Web-сервером. Простота CGI також сприяє значному поширенню цього стандарта.

Однако, поруч із перевагами, CGI-сценарии мають деякими вадами; головною з яких вважається неефективне використання ресурсів. Кожен із запитів клієнта, що передбачає виклик сценарію, породжує окремий процес на компьютере-сервере. Як відомо, для виконання незалежного процесу потрібно вулицю значно більше ресурсів, ніж для роботи потоку у складі процесса.

Стремление підвищити продуктивність і знизити витрати ресурсів призвело до створенню корпоративних стандартів. Найвідомішими є NSAPI і ISAPI.

Основное відмінність ISAPI-программы від CGI-сценария у тому, що ISAPIпрограма є не виконуваний файл, а динамічну бібліотеку (DLL). Завдяки цьому з’явилася можливість запускати програму не як окремий процес, бо як потік, приналежний Web-серверу. На виконання потоку потрібно значно менше ресурсів, ніж до роботи незалежного процесу. Потік використовує адресне простір який породив його процесу працює значно швидше, ніж окремий процесс.

По закінченні виконання процес вивантажується з пам’яті, а на час вступу наступного запиту знову завантажується з диска. І це не сприяє ефективної роботи CGI. При інтенсивному вступі запитів необхідність постійного обміну з диском створює додаткове навантаження на сервер. У на відміну від CGI-сценария, ISAPI-программа, закінчивши своєї роботи, зазвичай, залишається резидентной у пам’яті і використовується в обробці наступних запросов.

Однако іноді переваги ISAPI-программ обертаються вадами. (Це дивно. Адже якби ISAPI-программы мали свободу недоліків, вони швидко витіснили CGI-сценарии.).

Если за універсальність CGI-сценариев довелося платити недостатньою продуктивністю, то як плату за високу продуктивність творці ISAPI-программ жертвують універсальністю. Арсенал мов, наявних у розпорядженні розробників ISAPI-программ, значно біднішими, ніж в їхніх колег, створюють CGI-сценарии. Власне, тому, хто не хоче швидко написати досить велику ISAPI-программу, іншого вибору, крім C++.

Второй недолік ISAPI набагато серйозніше першого. Оскільки програму такого типу виконується, як потік, породжений сервером, вона використовує адресне простір серверу. Отже, помилка ISAPI-программы може як викликати її аварійне завершення, а й шпигат сервер.

Программы, використовують специфікацію ISAPI, діляться на дві категории.

* Розширення. Функціонально вони мало чим відрізняються від CGI-сценариев. Подібно CGI-сценариям, розширення реалізують додаткових можливостей Webсерверу, але будуються зовсім інакше. Розгляду ISAPI-расширений присвячена дана глава.

* Фільтри. Це особливий клас програм. Якщо розширення доповнюють можливості Web-сервера, то фільтри змінюють її поведінка. Принцип роботи і реалізація ISAPI-фильтров розгляне наступній главе.

ISAPI-расширение є динамічну бібліотеку (DLL), яка пов’язують із Web-сервером у його роботи. У цьому бібліотеці повинні експортуватися, тобто. бути доступними для виклику, дві функції: GetExtensionVersion () і HttpExtensionProcf).

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

В на відміну від розширення, яке викликається буде лише тоді, як у запиті клієнта явно зазначений URL програми, ISAPI-фильтр отримує управління при кожному зверненні клієнта до сервера. Программа-фильтр завантажується на згадку про під час запуску Web-сервера і залишається резидентной протягом усього часу роботи сервера.

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

Perl — интерпретируемый мову, пристосований в обробці довільних текстових файлів, вилучення їх необхідної информациии й видачі повідомлень. Він також зручний написання різних системних програм. Цей мову простий використання, ефективний, але про неї важко сказати, що він елегантний і компактен.

Perl було створено 1986 року як інструмент для адміністрування і конфигурирования системних ресурсів мережі, що з Unix-компьютеров. Він поєднує у собі кращі риси З, shell, sed і awk, для тих, хто знайомий з ними, вивчення Perl-а технічно нескладне особливих зусиль. Cинтаксис висловів Perl-а близький до синтаксису З. На відміну більшості утиліт ОС UNIX Perl піднімає обмежень на обсяг оброблюваних даних, і якщо вистачає ресурсів, то весь файл обробляється як біжать рядок. Рекурсія то, можливо довільній глибини. Хоча Perl пристосований на сканування текстових файлів, може обробляти як і двоичные дані і створювати .dbm файли, подібні асоціативне масивам. Perl дозволяє вживати регулярні висловлювання, створювати об'єкти, вставляти у програмі на З чи З++ шматки коду на Perl-е, і дає підстави здійснювати доступом до баз данных.

Язык Perl створили підвищення ефективності обробки текстових документів. Його орієнтовано на обробку рядків. Нині мову отримав велике поширення як інструмент створення виконуваних модулів WWW-сервера. Існуючі пакети розширення забезпечують доступом до SQLсерверам безпосередньо з Perl-программы. Це дозволяє вживати його на вирішення всіх завдань, які виникають за забезпеченні WWW-доступа до баз даних. Perl ефективний також за обробці довільних структур даних: існуючих звітів, списків, карток в електронному виде.

Хотя CGI-приложения можна писати на будь-якій мові, Perl і CGIпрограмування стали синонімами багатьом програмістів. Як сказав Хасан Шрейдер (Hassan Shroeder), перший вебмастер Sun, «Perl — це артерія Інтернету». Perl — самий широко використовуваний мову для CGI-программирования, і цього є багато вагомих причин:

• Perl легко вивчити: його синтаксис нагадує інші (например

З), оскільки він «багато прощає», — при помилці видається докладний повідомлення, допомагає швидко локалізувати проблему.

• Perl сприяє швидкої розробці, оскільки це интерпретируемый мову; вихідний код зайве компілювати перед запуском.

• Perl доступний на багатьох платформах з мінімальними изменениями.

• Perl містить досить потужні функції в обробці рядків з умонтованим у мову підтримкою пошуку істини та заміни по регулярним выражениям.

• Perl обробляє двоичные дані як і легко, як і текст.

• Perl не вимагає чіткого поділу на типи: числа, рядки — і логічні висловлювання є звичайними скалярами.

• Perl взаємодіє зі зовнішніми додатками досить легко і відданість забезпечує власні функції до роботи з файловими системами.

• Для Perl є багато вільно доступних модулів від CPAN, починаючи з модулів до створення динамічної графіки до інтерфейсів з Інтернетсерверами і системами управління базами даних. За докладної інформацією по CPAN зверніться до додатку В.

Perl справді дуже швидкий: зчитуючи вихідний файл, відразу компілює їх у низкоуровневый код, що потім виконує. Зазвичай компіляція і виконання в Perl не сприймаються, мов окремі кроки, оскільки виконуються разом: Perl запускається, читає вихідний файл, компілює його, запускає і далі завершує роботу. Цей процес відбувається повторюється щоразу, коли запускається сценарій Perl, зокрема CGIсценарії. Оскільки Perl так ефективний, той процес відбувається досить швидко, щоб обробляти все запити не так на самих завантажених серверах. Проте слід звернути увагу, що у системах Windows це набагато менше ефективно через необхідність створення нових процессов.

PHP.

РНР винайдено Расмусом Лердорфом наприкінці 1994 року. Перша версія випущена в 1995 року під назвою «Інструментарій Персональних Домашніх Сторінок», потім він переробили і називається PHP/FI Version 2 (FI — модуль обробки даних для форм). Було також додана підтримка баз даних mSQL. Відтоді з розробки почали приймати участь добровольцы.

Статистика используемости РНР є приблизною, але, згідно із дослідженням, проведеного Netcraft, на початку 2001 року РНР використовувався понад 5 300 000 сайтах у світі. Порівняйте: тим часом число IIS серверів було приблизно настільки ж (5 млн). Розробка інтерпретатора РНР набрала форми організованого командного процесу, ядро інтерпретатора розробляє компанія Zend.com. У цьому РНР поширюється вільно: його останню версію можна завантажити із сайту PHP.net. Модулі РНР поставляються в комплекті з сервером Apache, в комплектах систем Linux.

Изначально абревіатура РНР означала Preprocessor of Home Pages — препроцесор домашніх сторінок. Це мову що у HTML-страницы сценаріїв, виконуваних на сервері. По більшу частину його синтаксис позичений з цих мов, як З, Perl, Java, і навіть додана маса можливостей, яких цим мовам бракує. Інакше кажучи, синтаксис РНР — це розумна альтернатива і суворості З, і «безмежності» Perl.

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

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

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

Основные гідності РНР:

. безплатний; постійно вдосконалюється; дбає про UNIX і Windows платформах;

. допускає роботи з більшістю СУБД;

. має широкий набір функцій (більше трьох тыс.);

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

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

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

Если ви знайдете, що РНР неспроможний чогось (чи не оскільки вам хотілося б), ніхто перешкоджати вам вносити в вихідний код РНР (написаний на З) бажані зміни. РНР є програмним продуктом з відкритою вихідним кодом, і до нього поліпшень і доповнень з допомогою власних модулів розширення завжди приветствуется.

ASP і ASP.NET у складі Microsoft.NET.

Наприкінці 1997 р. Microsoft реалізувала щодо просту середу періоду виконання пля Web — Active Server Pages (ASP) як частину серверу Internet Information Server (IIS), включеного в Windows NT 4 Option Pack. IIS обслуговує Webсторінки, запитувані користувачем. ASP дозволяє програмістам реалізовувати алгоритми динамічного створення сторінок на IIS, які з статичного HTML і коду сценаріїв. Коли користувач затребувана ASP-страницу, IIS повинен її знайти й активізувати ASPпроцесор. ASP-процессор повинна прочитати сторінку і тільки одного скопіювати що містяться у ньому HTML-элементы в вихідну сторінку. У нашому прикладі атрибут style встановлює блакитний колір тексту. У цьому також інтерпретуються елементи сценаріїв, розташовані між обмежниками. Цей код, має виконувати алгоритм, видає як результату HTML-строки, які ASP-процессор повинен скопіювати в вихідну сторінку в ті місця, де були елементи сценарію. Результуючий вектор сторінка, зібрана з статичних HTML-элементов і HTML, динамічно згенерованого сценарієм, мусить бути передано клієнту. Для простих завдань ASP застосовувати щодо легко, що є ознакою якості цієї технологии.

The time is: on.

Технологія Microsoft ASP є сукупність серверних коштів для динамічного створення Web-документов.

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

Microsoft .NETy — готова інфраструктура на вирішення загальних проблем Інтернетдодатків. Це прикомпоновываемая середовище періоду виконання, яка у ОС Windows 2000.

Сервис, який забезпечувався б .NET:

• .NETy Framework — середовище періоду виконання, яка полегшує написання повноцінного надійного коду протягом короткого терміну, управління, розгортання і модифікацію цього коду. Написані вами програми розвитку й компоненти виконуються у середовищі. Вона надає програмістам під час виконання такі класні можливості, як автоматичне управління пам’яттю (складання сміття) і спрощений доступ всім службам ОС. Вона додає масу допоміжних функцій на кшталт простого доступу до Інтернету та баз даних. З іншого боку, вона забезпечує новий механізм використати коду — простіший в використанні й те водночас потужніший і гнучкий, ніж СОМ. Розгортати .NETy Framework простіше, оскільки він не вимагає настройки реєстру. Вона також підтримує на системному рівні стандартизований механізм управління версіями. Усе це доступно програмістам будь-якою .NET-совместимом мові. .NETy Framework ми обговоримо у розділі 2.

• ASP.NET (наступна версія Active Server Pages) — це нова середовище, працююча на Internet Information Server (US), помітно упрощающая написання коду до створення HTML-страниц. ASP.NET пропонує новий, не залежний від мови засіб створення коду і відсутність прив’язки його до запитів Webсторінок, — .NETy Web Forms — керовану подіями програмну модель взаємодії із елементами управління. Вона робить програмування Webсторінок аналогічним програмування форм Visual Basic. ASP.NET містить розвинені засоби управління сеансами і функції захисту. Вона надійніше, і продуктивність її значно вища тоді як ASP. Microsoft .NETy пропонує новий набір служб, дозволяють серверу надавати свої функції кожному клієнту про всяк машині з кожного ОС.

По мері розширення Web і збільшення потреб користувачів Webрозробникам знадобилися вдосконалення двох ключових властивостей виконує середовища: простоти програмування і забезпечення якості виконання. ASP.NET було таким удосконаленням. ASP.NET справляє враження оригінальну ASP і більшість коду можна перевести її у практично не змінювалась. Але внутрішня реалізація ASP.NET повністю перероблена про те, щоб задіяти можливості .NETy Framework.

ASP.NET відокремлює HTML від алгоритмів, створюючи фоновий код (code-behind). Замість перемішувати HTML з кодом, код пишеться в окремому файлі, який є на ASP-странице. Таке поділу Microsoft змогла вдосконалити середу розробки та налагодження Visual Studio.NET, що використовується розробки Web-приложений.

JAVA-servlets.

Сервлеты — це високопродуктивні платформо-независимые server-sideпpиложения, написані Java і складові реальну конкуренцію таким технологіям, як CGI, PHP3, Perl, і вже звісно ASP.

Java-сервлеты було створено Sun. Сервлеты нагадують CGI-сценарии тим, що це код, створює документи. Проте, сервлеты, оскільки вони використовують Java, мали бути зацікавленими скомпилированы перед запуском як класи, які динамічно завантажуються веб-сервером під час запуску сервлетов. Інтерфейс відрізняється від CGI. JavaServer Pages чи JSP — інша технологія, що дозволяє розробникам вбудовувати Java в веб-сторінки, на кшталт ASP.

К переваг сервлетов можна отнести:

a) Винятково висока швидкість работы.

Быстpодействие сервлетов пояснюється лише тим, що вони, во-пеpвых, пpедставляют собою вже скомпилиpованный і оптимизиpованный код (а випадку з JIT-ом — ще й пpеобpазованный в машинний) і, во-втоpых, виконуються в раз загpуженной і инициализиpованной Java-машине.

Таким чином, економляться ресурси на запуск обработчика/паpсеpа скpипта, необхідні, наприклад, для Perl чи PHP3 (у деяких ОС, зокрема, в OS/2 — це серйозна економія), і ресурси (як пам’ять, і час), витрачені на безпосередньо предкомпиляцию (інтерпретацію) коду (що необхідне тієї ж Perl, PHP, REXX).

Реально обидві цих проблеми відразу хто не наважується, практично, ніде. Hаибольший ефект дає, мабуть, впровадження транслятора скpиптового мови у веб-сеpвеp, наприклад, горезвісні .asp-скpипты в серверах від Microsoft, чи модулі mod_perl чи mod_php для apache. (Останній варіант — PHP3, запроваджений в апач — є, напевно, самим продуктивною з усього вышеперечисленного).

b) Переносимость.

В тому випадку принцип «write once run everywhere «діє безвідмовно. Сервлеты, написане у відповідності зі спецификацией від Sun і використовують якісь особливості конкретного веб-сервера, працюють без будь-якої переробки чи перекомпіляції під якими завгодно, інколи дуже далёкими друг від друга платформами, чи це Solaris, FreeBSD чи OS/2. У зв’язку з цим розробник може цілком вільно вибирати, як і системі йому зручніше працювати — він і в жодному разі не прив’язаний до сервера, ні з майбутньої цільової платформе.

з) Фундаментальна обізнаність із базами данных.

Работа з реляционными СУБД з Java уніфікована (при цьому існує спеціальний пакет java. sql), зручна і відв'язана від специфічних для конкретної СУБД тонкощів. Все, що Вам потрібно — це знайти для своєї СУБД JDBC-дpайвеpы (що тепер є практично всім совpеменных баз даних, навіть впродовж кількох pазновидностей), і далі можна користуватися совеpшенно стандаpтными механизмами.

А під час переходу в іншу СУБД, наприклад, з MySQL на Oracle, досить буде просто додати в CLASSPATH новий драйвер і щось поміняти URL для підключення в іншу базі. Жодного зміни у коде.

d) Перспективність, сучасність технологий.

Конечно, є в цій технології й недоліки. Як технічні: наприклад, високі вимоги до системним ресурсів — переважно, до пам’яті (під OS/2, наприклад, запущена Java-машина займає 15−20 мегабайтів оперативної пам’яті) чи необходимсть у якісному стійкою реалізації Java для обраної платформи, і іншого характеру: такі як відсутність належної кваліфікації як в розробників, і, найчастіше, в тих, хто сприймає рішення, їх усталені упередження і що другое…

Технология pаботы сеpвлет-сеpвеpа.

Отже, чого ж працюють сервлеты. Розглянемо на прикладі модуля JServ до веб-серверу apache.

В момент старту серверу разом із стартує і ява-машина з так званим servlet-wrapper «ом чи середовищем, у якій згодом і доведеться виконуватися сервлетам. У принципі, JServ — і є той самий середовище. Він повністю написано на Java й займається безпосередньо завантаженням і виконанням сервлетов, слідуючи специфікації Sun, і навіть обміном даними з власне веб-сервером. У цьому цього має може бути спеціальний модуль mod_jserv (його потрібно додати при компіляції і складанні apache, чи підключити як зовнішнього модуля).

При отриманні запиту на документ, що припадає на спеціально обумовлений URL чи каталог (зазвичай щось на кшталт /servlets/), apache з допомогою модуля mod_jserv передає цей запит JServ «у, що визначає, який сервлет повинен цей запит обробити, завантажує цей сервлет (коли він ще ні завантажений) і далі повертає веб-серверу той текст чи потік даних, який було сформовано внаслідок роботи сервлета.

Изначально сервер «порожній «- за його старті сервлеты звичайно завантажуються (хоча є можливість примусово форматувати потрібні сервлеты при старті серверу). За появи запиту потрібний сервлет шукається у списку вже завантажених й за необхідності, стартуется і инициализируется. Після цього він є постійно загруженным в Java-машине (і предкомпилированным, якщо Java-машина містить JIT) і за наступних запитах просто викликається відповідний його метод їхнього обробки. Переваги такої ідеології очевидні. Функціонально це аналогічно виклику простий підпрограми усередині звичайної серверу та проиходит дуже й ефективно. З іншого боку, помітний виграш дають такі речі, як раз проведена ініціалізація, можливість збереження глобальних даних чи підтримка багатьох клієнтських сесій, яка самим сеpвеpом (а чи не сеpвлетами, pазpаботчики котоpых значною мірою позбавлені изобpетания велосипедів). Наприклад, можна встановити одне єдине з'єднання з базою даних, і користуватися ним при обробці запитів — чимала економія, огляду на те, що з тієї ж скриптов на perl чи PHP доводиться щоразу створювати нове з'єднання, відновлювати параметри сесії і т.п.

Конечно ж, є можливість примусової вивантаження окремих сервлетов з пам’яті у разі потреби, і навіть можливість автоматичного розпізнавання зміни сервлетов та його перезавантаження. Іншими словами, при відновленні тієї чи іншої сервлета не потрібно перезавантажувати весь веб-сервер чи JServ, не так важко покласти нову версію цього разу місце старої, і буде автоматично завантажена на згадку про при наступному запиті (природно, цьому буде спочатку вироблено коректне завершення роботи старої версії, шляхом виклику спеціального методу, та був завантаження і ініціалізація новой).

Пакет Cold Fusion від Macromedia.

Пакет призначений від використання під ОС Windows і дозволяє звертатися до різним баз даних, які підтримують інтерфейс ODBC через WWWінтерфейси. Пакет має комерційний статус, його «evaluation copy «є свободно-распространяемой. Для доступу до баз даних використовуються конструкції мови DBML — розширення мови HTML, доповненого засобами доступу до БД через ODBC. Документи мовою DBML обробляються на серверної частини, у результаті створюється HTML-документ.

Пакет може ефективно використовуватися як оброблювача запитів WWW до вихідним баз даних чи інформаційному хранилищу.

ColdFusion від Macromedia більшою мірою ніж РНР розрізняє сторінки з кодом і HTML-страницы. У HTML-страницах може бути додаткові теги, викликають функції ColdFusion. У ColdFusion доступні кілька стандартних функцій, і розробники можуть створювати власні функції як розширення. ColdFusion був спочатку написано для Windows, але тепер доступні версії й у Unix. Інтерпретатор ColdFusion вмонтований в веб-сервер.

Технологія ActiveX.

ActiveX — технологія Microsoft, призначена для написання мережевих додатків. Вона надає програмістам набори стандартних бібліотек, значно які полегшують процес кодування. Коли раніше під час написання програм використовувалися механізми OLE (OLE Automation, OLE Documents, OLE Controls,…), засновані на компонентної об'єктної моделі (COM — Component Object Model), нині бібліотеки OLE переписані те щоб забезпечувати функціональність, достатню для написання мережевих додатків. Таким чином, нині за написанні програм використовується DCOM (Distributed Component Object Model) — розподілена компонентная объектная модель, а реалізують бібліотеки ActiveX, котрі за обсягу виявилися набагато менше, ніж бібліотеки OLE, а, по швидкості - швидше. Збереглася й сумісність — будь-який програмний компонент OLE працюватиме з бібліотеками ActiveX.

Понятие СОМ.

Усі технології OLE і ActiveX, побудовано виходячи з, забезпечене СОМ. Отже, що таке СОМ? Щоб це питання, задамося спочатку іншим: «Як друга програмного забезпечення має одержувати доступом до сервісів, наданих інший частиною? «Сьогодні відповідь залежить від цього, чим є ці части:

. Додатка, наприклад, скомпоновані з бібліотекою, можуть користуватиметься його сервісами, викликаючи функції з цього библиотеки.

. Додаток він може використовувати сервіси іншого — що є цілком окремим процесом. І тут два локальних процесу взаємодіють у вигляді якогось механізму зв’язку, яка зазвичай потребує визначення протоколу між тими додатками (набір повідомлень, дозволяє одному додатку видавати запити, іншому відповідним чином відповідати на них).

. Ще приклад — додаток, що використовує сервіси ОС. Тут додаток зазвичай виконує системні виклики, оброблювані операційній системой.

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

В принципі проблема одна: друга програмного забезпечення повинен одержати доступ сервісів, наданих інший частиною. Однак у кожному окремому разі механізм доступу різний: виклики локальних функцій, передача повідомлення засобами зв’язок між процесами, системні виклики (що з погляду програміста виглядають практично як і, як і виклики функцій) чи якась різновид мережевих комунікацій. Навіщо все це? Не було б визначити одну спільну спосіб доступу до всіх видів програмних сервісів незалежно від способу їх реализации?

Этим й займається СОМ — вона визначає стандартний механізм, з допомогою якого одне частина програмного забезпечення надає свої сервіси інший і який працює переважають у всіх описаних вище випадках. Загальна архітектура сервісів в бібліотеках, додатках, системному і мережному програмному забезпеченні дозволяє СОМ змінити підхід до створення программ.

В початку 1996 року Microsoft запровадила в господарський оборот новий термін — ActiveX. Оскільки самим динамічно малорозвинутим напрямом у комп’ютерної індустрії є Internet, саме тут найприродніше може вишукати своє місце програми, написані з допомогою технології ActiveX. Не випадково останнім часом поняття ActiveX і Internet часто зустрічаються поруч. У той самий час технологія ActiveX має значно більше універсальну область использования.

Стандарт ActiveX дозволяє програмним компонентами взаємодіяти друг з іншому через мережу незалежно від мови програмування, де вони написані. З допомогою ActiveX можна «оживити «сторінки Web ефектами мультимедіа, інтерактивними об'єктами чи складними додатками. ActiveX забезпечує якийсь «скріпний розчин », з допомогою якого окремі програмні компоненти різними комп’ютерах «склеюються «на єдину розподілену систему.

ActiveX включає у собі клієнтську і серверную частини, і навіть бібліотеки для разработчика:

. програмні елементи ActiveX — компоненти, працівники комп’ютеріклієнта, але загружаемые вперше з сервреа Web. З їхньою допомогою можна демонструвати різнорідну інформацію, що включає відеота звук без запуску додаткових програм. Понад те, ці програмні компоненти можна використовувати в додатках, написаних будь-яких популярних мовами програмування, включаючи Java (Visual J++), Visual.

Basic, Visual C++.

. Active Scripting підтримує будь-який популярний макромова, включая.

Visual Basic Script і JScript (реалізація компанією Microsoft мови сценаріїв JavaScript). Макроязыки можна використовувати для об'єднання в одній сторінці кількох програмних элементов.

ActiveX чи Java, забезпечуючи їхню взаємодію між собой.

. Документи ActiveX дозволяють відкрити і дозволяють опрацьовувати з вікна Microsoft.

Internet Explorer документ будь-якого формату (наприклад, файл Microsoft.

Excel чи Word).

. Віртуальне машина Java дозволяє будь-який програмі перегляду Internet, підтримує технологію ActiveX (наприклад, Internet Explorer 3.0) виконувати програмні компоненти Java забезпечуватиме їхню взаємодію з програмними компонентами ActiveX.

. ActiveX Server Framework забезпечує серверні функції ActiveX, включаючи підтримку безпечних сполук, доступом до баз даних, і другие.

. Кошти розробки використовувати знайомі системи програмування Microsoft та інших фірм до створення компонентов.

ActivX. До до їх числа ставляться Visual Basic, Visual З++, Macromedia.

Shockwave, Adobe Photoshop, Borland Delphi, кошти программирования.

Sybase і другие.

Основные переваги використання технології ActiveX:

. Бистре написання програмного коду. Програмування мережевих взаємодій стає дуже схожим на програмування для окремого компьютера.

. Відкритість і мобільність. Специфікації технології недавно було передано до Open Group в якості основи відкритого стандарту. Крім того,.

Microsoft що з компаніями Metrowerks і Bristol закінчує реалізацію технологій ActiveX для платформ Macintosh і UNIX.

. Можливість написання додатків з допомогою знайомих коштів розробки. Програмні елементи ActiveX можна створити з помощью.

Visual Basic, Visual З++, Borland Delphi, Borland З++, будь-яких коштів розробки на Java.

. Багато вже існуючих програмних елементів ActiveX, які безплатно можна застосовувати на серверах Web й у додатках незалежних розробників. З іншого боку майже будь-який програмний компонент OLE сумісний із технологіями ActiveX і може застосовуватися без модифікацій в мережевих приложениях.

. Стандартність. Технологія ActiveX полягає в широко використовуваних стандартах Internet (TCP/IP, HTML, Java) з одного сторони, і стандартах, введених у свого часу Microsoft і необхідні збереження сумісності (COM, OLE).

Клиентская технологія ActiveX (Active Desktop).

ActiveX реалізується на машине-клиенте з допомогою бібліотек, поставлених разом із Internet Explorer 3.0. Надалі ці бібліотеки доповнюватися і листуватися, зокрема, найважливіші відновлення цих бібліотек на клієнта можна очікувати після виходу NetShow, продукту, покликаного забезпечити оптимальної передачі через мережу даних мультимедиа.

[pic].

Программные компоненти ActiveX можуть бути автоматично на комп’ютер користувача через мережу з віддаленого серверу, причому буде завантажений код, придатний конкретної платформи клієнта, чи це Macintosh, Windows чи Unix. Розробник Web-страниц може або сам запрограмувати елементи ActiveX, використовуючи популярні мови програмування Visual З++, Visual Basic чи Java, або скористатися существующие.

Используя мови сценаріїв ActiveX, програмісти можуть забезпечити взаємодія різних елементів ActiveX, Java, інших програм на клиентском комп’ютері і різних частин самого Internet Explorer. Наприклад, програмний елемент синхронізації може оновлювати сторінку Web через певні часові відтинки. Можна ще періодично запускати програмний елемент, що привертав увагу користувача. Є реалізації Visual Basic Scripting Edition, що є підмножиною Visual Basic, і JScript. З іншого боку, розробник може написати інтерпретатор власного мови сценаріїв і додати їх у систему.

С ActiveX Documents знайомий кожний, хто з складовими документами. З допомогою Internet Explorer можна працювати, наприклад, з таблицями Microsoft Excel і файлами інших офісних додатків. Це програму перегляду універсальним засобом, здатним як відображати файли в форматі HTML і здійснювати переходи по посилань, а й які підтримують роботи з документами будь-яких додатків і навіть запуск программ.

Серверная технологія ActiveX (Active Server).

Серверна частина технології ActiveX реалізована з допомогою Microsoft Internet Information Server 3.0. З допомогою ActiveX можна писати програми мовами сценаріїв (це вже VBScript), виконуються на сервері. Коли раніше розробникам доводилося вживати такі кошти, як Microsoft Visual З++ для написання динамічно загружаемых бібліотек, використовують спеціальні виклики Internet Server АПІ, нині можливо написання додатків мовою сценаріїв. Це значно спрощує розробку, скорочує час написання програми розвитку й мінімізує витрати. Програми, засновані на технологіях Active Server значно продуктивнішими програм, заснованих на виключно Common Gateway Interface (CGI). Це досягається оптимізацією процесів ActiveX на сервері, котра враховує архітектуру Windows NT.

С допомогою мов сценаріїв на сервері можна проводити доступом до системам управління базами даних, які підтримують стандарт ODBC, і використовувати механізм транзакций.

Поскольку підхід для використання технологій ActiveX на сервері стандартизован, програмісти можуть лише розробляти докладання, здатні виконуватися на серверах, а й реалізовувати свої схеми взаємозв'язку серверних додатків і сервісів, створювати власні інтерпретатори серверних мов сценаріїв. І тому потрібно попереднє придбання ліцензії у Open Group.

Підтримка состояния.

HTTP — це протокол без збереження стану, він визначає, як вебклієнти і сервери спілкуються один з одним, щоб надавати користувачам документи та інші ресурси. На жаль, HTTP не забезпечує прямий спосіб ідентифікації клієнтів, аби відстежувати їх при запиті кількох сторінок. Але є способи відстежувати користувачів непрямими методами, які ми розглянемо у цій главе.

Веб-разработчики називають відстеження користувачів підтримкою стану. Ряд взаємодій певного користувача з нашим сайтом — це сесія. Інформація, що її збираємо для користувача, це сессии.

Для чого потрібна підтримка стану? Якщо ви і поважаєте приватність, то відстеження користувачів сприяє цьому. Хоча відстеження користувачів можна залучити до сумнівних цілях, є законні ситуації, як ви мали б це використовувати. Візьмемо онлайн-магазин: щоб покупці могли переглядати продукти, додавати б у кошик і далі розплачуватися на обраний, сервер має забезпечити кожному користувачеві власну кошик. І тут збір окремих елементів з інформації сесії як скажімо, а й приветствуется.

Строки запиту додаткова інформацію про пути.

Можна додати ідентифікатор в рядок запиту чи як додаткову інформацію всередині URL-документа. Коли користувачі переміщаються сайтом, CGI-приложение на льоту генерує документи, передаючи ідентифікатор з документа до документа. Це дозволяє нам відстежувати всі документи, запитані кожним користувачем, і Порядок, де вони були запитано. Броузер посилає цю інформацію нам через рядок статуса.

Скрытые поля.

Приховані поля форм дозволяють вбудовувати «невидиму» інформацію як ім'язначення в форми те щоб користувач не побачив її, не подивившись вихідний код HTML-страницы. Хоча це й звичайні поля форм і значення, ця інформація посилається CGI-приложению, коли користувач натискає кнопку відправки. Звичайно використовуємо цю технологію, щоб врахувати вибір, і переваги користувачів, якщо бере участь кілька форм. Ми побачимо, як CGI. pm може зробити більшу частину цієї роботи з нас. Броузер посилає нам э информацию в рядку статусу чи тілі повідомлення, в зависимости типа запиту (GET чи POST соответственно).

Cookie за клиента.

Усі сучасні броузеры підтримують cookie за клієнт що дозволяє зберігати інформацію машиною імені клієнта й перед «вать її назад на сервер при кожному запиті. Можна також використовувати цю технологію для зберігання даних за клієнта, которы будуть доступні нам, як у подальшому користувач запросить ресурси з серверу. Cookie посилаються назад клієнтом в рядку заголовка HTTP Cookie.

Преимущества й недоліки цих підходів відбито у таблиці 11−1 Ми розглянемо кожну технологію окремо, і якщо б у таблиці залишиться незрозумілим, ви зможете потім повернутися до неї. Зазвичай cookie на боці клієнта — це найбільш потужний засіб підтримки стану, але вимагає щось і південь від клієнта. Інші технології працюють незалежно від клієнта, але в обох є обмеження кількості сторінок, які можна отследить.

Таблица 11−1. Технології, використовувані на підтримку состояния.

|Технологія |Область |Надійність і |Вимоги до | | |застосування |продуктивність |клієнту | |Рядки |Можливо |Складно достоверю |Не вимагає | |запиту і |налаштована для |розібрати все посилання в|какого-либо | |дополнитель|определенных |документі; доводиться |особливого | |ная |груп сторінок или|значительно |поведінки від | |інформація |веб-сайту |розплачуватися |клієнта | |про шляху |повністю. Але |продуктивністю | | | |інформацію про |під час передачі | | | |стані |статичного | | | |втрачається, якщо |вмісту через | | | |користувач |CGI-сцена-рии | | | |йде з | | | | |веб-сайту, а | | | | |потім | | | | |повертається | | | |Приховані |Працює лише |Легко реалізується; не |Не вимагає | |поля |для кількох |впливає |будь-якого | | |відправок форми |продуктивність |особливого | | | | |поведінки від | | | | |клієнта | |Cookie на |Працює скрізь, |Легко реалізується; не |Потрібна | |боці |навіть якщо |впливає |підтримка (і | |клієнта |користувач |продуктивність |прийняття) cookie | | |забирають інший | |клієнтом | | |сайт і потім | | | | |повертається | | |.

Заключение

.

Глобальна інформатизація суспільства призводить до того, що потреба у інформації, зростає з кожним новим користувачем мережі. У цьому завданням спеціалістів у галузі інформаційних технологій забезпечити користувачів повною і достовірною інформацією шляхом простого і зручного для користувачів доступу до нагромадженим масивам данных.

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

Таким чином можна покласти, майбутнє розвиток Інтернету в що свідчить визначається консолідацією зусиль і злагодженістю дій фахівців і розробників, задіяних у цій отрасли.

Список використаної литературы.

1. Джейсон Мейнджер. Java: основи програмування: Пер. з анг. — К.:

Видавнича група BHV, 1997.-320с.

2. Симкин Стів, Бартлет Нейл, Леслі Алекс. Програмування на Java.

Путівник :Пер. з анг. — До. НИПФ «ДиаСофт Лтд», 1996. 736 с.

3. Кристиансен Т., Торкингтон М. Perl: Бібліотека програміста :Пер. з анг.- СПб.: Видавництво «Пітер», 2000. — 736с.: ил.

4. Холзнер Стівен. Perl: спеціальний довідник :Пер. з анг. — СПб.: Питер,.

2000. — 496с.: ил.

5. Хейл, Бернард Ван. JDBC: Java та фінансової бази даних: Пер. з анг. М., 1999.-320с.

6. Эферган М. Java: довідник. — СПб.: Пітер, 1998. -448с.: ил.

7. internet.

8. internet.

9. internet.

10. internet.

11. internet.

12. internet.

13. internet.

14. internet.

15. internet.

———————————;

[pic].

Показати весь текст
Заповнити форму поточною роботою