Web-базирана тестова система



страница4/5
Дата14.01.2018
Размер0.69 Mb.
#46633
1   2   3   4   5

3.1 Статично публикуване


Първото поколение е поколението на статичното публикуване – страници, които разчитат на HTML, статични изображения, текстове, които не могат да се позиционират точно от гледна точка на X и Y координатите. За да се променя страницата, трябва да се коригира HTML ръчно или с редактор; и още – статичните страници не са съвместими с базите данни. Те не могат да правят нещо много по-различно от това да показват текст или изображения.
3.2 Активни web-сайтове

От известно време Мрежата се ориентира към активни web-сайтове, които позволяват на потребителя да бъдат изпращани настроени според собствените му изисквания страници и предлагат по-динамичен опит при работа с браузъри. Такива сайтове се създават с помощта на комбинация от програмни езици и технологии, като може да се из-ползва всяка от тези технологии поотделно или няколко от заедно; всички те са независими.

Тези технологии могат да бъдат разделени на две групи: технологии от страната на клиента и технологии от страната на сървъра.

Първите включват:



  • ActiveX контроли – създадени чрез Visual C++ или Visual Basic

  • Java аплети

  • Скриптове от страната на клиента и динамичен HTML

Технологиите от страната на сървъра включват:

  • CGI (Common Gateway Interface)

  • Патентовани APIs за web-сървър (ISAPI и NSAPI)

  • ASP (Active Server Pages)

  • Java Server Pages (JSP) и Java Servlets

  • Server-Side JavaScript (SSJS)

  • PHP



3.3 Динамични технологии от страната на клиента


Основната пречка пред вграждането на функционалност в клиентската част е, че Webmaster няма контрол върху софтуера, който се използва за разглеждане на страницата. Всяка компания иска да обхване колкото е възможно повече потребители, използващи колкото е възможно повече различни браузъри, вграждането на технологии, които се поддържат само от новите версии на основните браузъри, е много бавно. Точно обратното, технологиите от страната на сървъра не изискват определен браузър и следователно се вграждат по-бързо.

ActiveX контроли


ActiveX контролите са самостоятелни програми, известни като компоненти, които са написани на някакъв програмен език, като C++ или Visual Basic. Когато се добавят към web-страница, тези компоненти предоставят специфична функционалност, например диаграми или графики, таймери, удостоверяване на самоличността на клиенти или достъп до база данни. ActiveX контролите се до-бавят към HTML страници чрез тага , който вече е чест от HTML стандарта. Когато са вградени в web-страница, ActiveX контролите могат да се изпълнят от браузъра или сървъра.

ActiveX контролите са създадени от Microsoft и въпреки че са съвместими с HTML стандарта, те не се поддържат от нито един Netscape браузър без ActiveX модул: те функционират само на Internet Explorer (въпреки че някои от функциите на ActiveX се поддържат и за Netscape чрез модули, предоставени от Ncompass). Следователно, те все още не могат да се смятат за междуплатформен начин една страница да се направи динамична.

Java аплети


Аплет е програма, написана на език Java, която може да бъде включена в HTML страница, подобно на начина, по който се включва изображение. Когато се използва разрешен от Java браузър, за да се разглежда дадена страница, която съдържа аплет, кодът на този аплет се предава към системата на потребителя и се изпълнява от браузъра. Този код е предварително компилиран от компилатора на Java. Аплетът притежава всички предимства на езика, т.е. съществува самостоятелно и е междуплатформен.
Скриптове от страната на клиента и DHTML

Езиците, на които се пишат скриптове, предоставят на начинаещите потребители по-достъпно въведение в програмирането. Писането на скриптове от страната на клиента, използвано при мрежите, е разработено като динамична алтернатива на статичния HTML. Когато браузърът намери скрипт-инструкция, вградена в HTML код, той превежда този скрипт в чист HTML (ако се приеме, че браузърът разбира този конкретен език за писане на скриптове). Това позволява да се създават web-страници с повече интерактивни възможности, които да са много по-функционални от една обикновена HTML страница.

JavaScript е основния език за писане на скриптове от страната на клиента. Поддържа си както от Netscape Navigator (от версия 2 нататък), така и от Microsoft Internet Explorer (от версия 3 нататък). VBScript се поддържа само от Internet Explorer и следователно не е особено полезен за писане на Интернет скриптове с общо предназначение, въпреки че понякога се използва в интранет приложения, разработени само за Microsoft.

JavaScript не трябва да се бърка с Java. JavaScript първоначално е наречен LiveScript; компанията

Netscape възнамерява да продава езика като напълно отделен от Java програмен език. Но разбирайки популярността на Java, Netscape обединява усилията си с компанията Sun по време на разработката на LiveScript, променя името на продукта на JavaScript и взаимства някои структури от синтаксиса на Java.

Динамичният HTML (DHTML) много прилича на писането на скрипт по това, че скриптът се интерпретира на ниво браузър и по този начин се създава представяне на страницата в HTML. Всъщност, единственото, по което DHTML се различава от писането на скриптове е, че той позволява достъп до допълнителни възможности, като възможността за анимиране на страници и прецизно разположение на графики и текстове чрез използване на абсолютно позициониране.



3.4 Технологии от страната на сървъра

Преди няколко години единственото истинско решение за доставяне на динамични данни в мрежата беше т.нар. CGI (Common Gateway Interface). CGI програмите предоставят относително лесен начин за създаване на web-приложения, които приемат въвежданите от потребителя данни, из-пращат заявки към база данни и връщат някакъв резултат обратно към браузъра. Microsoft и Netscape разработват собствени приложни програмни интерфейси (APIs), които могат да се използват за разработване на входящ код за обслужване на заявките в мрежата. Последните предложени web-технологии от страната на сървъра включват ASP (Active Server Pages), Java сървлети и JSP (Java Server Pages), въпреки че има и много други.



Common Gateway Interface (CGI)

CGI е най-използваната web-технология от страната на сървъра и всеки съществуващ web-сървър има поддръжка за CGI програми. CGI програмата може да бъде написана на всеки програмен език, въпреки че най-популярния език за CGI програмиране е Perl. Web-сървърите, включващи CGI, играят ролята на шлюз между потребителската заявка и данните, които тя изисква. Това се извършва, като първо се създава нов процес, в който се изпълнява програмата. След това този процес зарежда необходимите среди за изпълнение, както и самата програма. Накрая предава искания обект и извиква програмата. Когато програмата завърши, web-сървъра прочита отговора от stdout.


Основният недостатък CGI програмирането е, че мащабирането не е добре застъпено. Всеки път когато web-сървърът получи заявка, се създава из-цяло нов процес. Всеки процес се състои от свои собствени променливи за средата, отделен екземпляр от всяка необходима среда за изпълнение, копие на програмата и заделяне на памет за програмата, която се използва. Ако едновременно се получат голям брой заявки, тогава ресурсите на сървъра се натоварват много и е възможно той да блокира.

В решаването на този проблем могат да помогнат технологии като FastCGI и mod_perl на Apache. И двете подобряват характеристиките, свързани с производителността: FastCGI го постига като споделя един екземпляр от всяка CGI програма, а mod_perl –като интерпретира и изпълнява Perl скриптове на Apache web-сървър.

Патентовани APIs за web-сървър (ISAPI и NSAPI)

За да преодолеят недостатъците на CGI, Microsoft и Netscape разработват свои собствени API, като по този начин позволяват на разработчиците да създават приложения за сървър като споделени библиотеки. Тези библиотеки са проектирани така, че да се зареждат в същия процес както web-сървъра и могат да обслужват многократни заявки без да създават нов процес. Те могат да бъдат заредени, когато се стартира web-сървъра или при необходимост. Ако тези библиотеки не се използват определено време, web-сървърът ги премахва от паметта.

Въпреки че тези вътрешни за процеса библиотеки са ефективно разширение към web-сървъра, все пак има някакви проблеми. Те са:


  • Тъй като тези APIs са специфични за конкретна платформа, всяка програма, написана чрез използването им, може да се използва само за съответната платформа. Преместването на такива програми в различни среди е много трудна задача.

  • Тъй като към тези библиотеки се осъществява едновременен достъп от много потребители, достъпа до тях трябва да е сигурен. Това означава, че трябва да се обърне внимание на начина, по който става достъпа до глобални и статични променливи.

  • Ако програмата, работеща на сървъра, доведе да нарушение в системата за достъп, това може да доведе до срив в целия web-сървър, тъй като тя е в същия процес както web-сървъра.

Active Server Pages (ASP)

Технологията ASP (Active Server Pages) е подобна на PHP по това, че комбинира HTML, писането на скриптове и компонентите от страната на сървъра в един файл, наречен Active Server Page (Активна страница на сървъра). Когато сървърът получи заявка от ASP-страница, той първо търси страницата и след това изпълнява кода, вграден в нея. Резултатът от това изпълнение е HTML страница, която се връща към браузъра.



ASP-страница може да бъде написана, като се из-ползва HTML, Jscript (варианта на Microsoft за JavaScript) и VBScript. Посредством скрипта Active Server Page може да получи достъп до компонентите от страната на сървъра. Тези компоненти могат да бъдат написани на всеки програмен език, ако той предоставя COM (Microsoft спецификация за компоненти) интерфейс. Един голям недостатък на ASP-страниците е, че те могат да се използват само с web-сървър на Microsoft (IIS, PWS) под операционна система на Microsoft (Win9x, WinNT). Съществуват портове за други платформи и web-сървъри, но липсата на широка поддръжка на COM интерфейс намалява ефективността им.

Server-Side JavaScript (SSJS)

Server-Side JavaScript (SSJS) е технологията, с която Netscape отговаря на ASP. Подобно на Active Server Pages, страниците, използващи SSJS се състоят от HTML код с вградени секции със скриптове от страната на

сървъра. Този код се изпълнява на сървъра и като резултат се получава web-страница, състояща се от обикновен HTML, която се изпраща към браузъра. SSJS има предимството, че използва JavaScript, който е стандартния език за програмиране в Web. Има обаче един недостатък спрямо ASP и PHP:



приложенията, които използват SSJS, трябва да се компилират преди да се изпълняват. Това още по-вече усложнява модифицирането на SSJS страници. По-сериозен недостатък е, че SSJS се поддържа само за Enterprise Server на Netscape, който доста изостава от Apache и IIS на Microsoft като съотношение на web-сървърите в Интернет. Това ограничава сериозно използването на SSJS.

Java Servlets и JSP (Java Server Pages)

Java Servlets и Java Server Pages (JSP) са технологии от страната на сървъра, които използват езика Java. Компанията Sun представя серия нови APIs, които подпомагат свързването на програмите с корпоративни услуги и данни. Java Servlet API е разширение на Java платформата и предоставя големи възможности за създаване на динамично съдържание и разширява функционалността на web-сървъра.

Java Servlet е програма от страната на сървъра, която обслужва HTTP заявки и връща резултата като HTTP отговор. В това отношение тя прилича много на CGI. Добра аналогия за сървлет е не-визуален аплет, който работи на web-сървъра. Жизненият цикъл е подобен на един аплет и протича вътре в Java Virtual Machine (Виртуална Java ма-шина –JVM).

JSP-страниците са подобни на ASP-страниците на Microsoft. Една JSP-страница съдържа HTML, Java код и JavaBean компоненти. JSP предоставя възможност за вграждане на компоненти в страница, които извършват определени действия, за да генерират страницата, която се изпраща на клиента. Когато потребителят изпрати заявка за JSP-файл, web-сървърът първо генерира съответния сървлет, ако не съществува такъв. След това web-сървърът извиква този сървлет и връща полученото съдържание като резултат към web-браузъра.

Java Server Pages и Java Servlets имат същите недостатъци както Java, който се използва от страната на клиента: Java е сравнително труден за научаване език от начинаещи програмисти.

Каталог: files -> files
files -> Р е п у б л и к а б ъ л г а р и я
files -> Дебелината на армираната изравнителна циментова замазка /позиция 3/ е 4 см
files -> „Европейско законодателство и практики в помощ на добри управленски решения, която се състоя на 24 септември 2009 г в София
files -> В сила oт 16. 03. 2011 Разяснение на нап здравни Вноски при Неплатен Отпуск ззо
files -> В сила oт 23. 05. 2008 Указание нои прилагане на ксо и нпос ксо
files -> 1. По пътя към паметник „1300 години България
files -> Георги Димитров – Kreston BulMar
files -> В сила oт 13. 05. 2005 Писмо мтсп обезщетение Неизползван Отпуск кт


Сподели с приятели:
1   2   3   4   5




©obuch.info 2024
отнасят до администрацията

    Начална страница