українська русский english

Базовые концепции Web-программирования

 


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


Web-страницу создаются при помощи языка разметки гипертекста HTML (Hypertext Markup Language). Он состоит из набора обозначений - тегов, используемых для разметки текста, находящегося между ними. Теги ограничиваются символами <> - начало разметки и </> - конец разметки. Например:

 

<b> Текст будет выделен жирным шрифтом </b>

Статические и динамические страницы HTML

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


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


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


Большинство страниц на ранних стадиях развития Интернета была статическими. Дальнейшее развитие «глобальной паутины» состоялось, во многом, благодаря развитию технологии динамических страниц. Это развитие было, в основном, стимулируемый требованием пользователей Интернета быть активными действующими лицами информационного пространства. Например, они стремятся заказывать товары в интернет-магазинах, принимать участие в аукционах, получать информацию о движении средств на банковских счетах и т.д.. Динамические страницы удовлетворяют эти потребности благодаря способности подстраиваться под конкретного пользователя, а также, реагировать на его действия в браузере.


Начало эволюции языков программирования, способных динамически изменять содержимое Web-страницы, благодаря использованию так называемых языков скриптов, выполняемых непосредственно на вычислительных ресурсах клиента. Код скриптовых языков предназначается для выполнения только под управлением соответствующего программного интерпретатора. Самыми известными из этих языков считаются JavaScript и VBScript. Скрипты на этих языках встраиваются в код HTML, который сервер посылает браузеру. Сценарии, выполняемые на стороне клиента, выделяются тегами <SCRIPT> и </SCRIPT>. Браузер интерпретирует этот код и показывает пользователю результат.


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


Несмотря на это, разработка скриптов достигла значительного уровня популярности благодаря полученной возможности успешного решения ряда задач с их участием. Например, скрипты могут проверить правильность запроса, вводимого в интерфейс страницы, и тогда не придется перегружать сервер обработкой неправильных запросов. Некоторые программисты создают на JavaScript анимационные эффекты. Однако, возможности выполнения сценариев на стороне клиента недостаточно для создания полноценных динамических страниц. Даже если на странице используется JavaScript и анимированные картинки. GIF, в наше время его принято считать статичной.


Динамическая Web-страница должна создаваться в нужный момент времени программой, выполняемой на Интернет-сервере. Для этого широко применяется механизм шлюзов CGI (Common Gateway Interface). Сначала пользователь получает доступ к статической страницы с формой, которая реализует для него интерфейс, и задает адрес (URL) исполняемого приложения. Приложение располагается на соответствующей адресу серверной платформы и является одним из исполняемых файлов программ, написанных на языках прикладного программирования (например, на С + + / C #). Дополнении принимает по протоколу HTTP данные из входного потока, проводит необходимые вычисления и, в зависимости от их результатов, записывает в выходной поток результирующую Web-страницу. То есть, пользователю, в ответ на его запрос, ссылается HTML-код Web-приложения сгенерированный специально для него.


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


Для решения этой проблемы Microsoft была предложена альтернатива - ISAPI (Internet Server Application Programming Interface). Вместо монолитных исполняемых файлов, используются DLL-библиотеки. Код DLL находится в памяти все время и, для каждого запроса, вместо процессов, создает нити исполнения. Все нити используют единый код, который выполняется в едином процессе Интернет-сервера. Это позволяет повысить производительность и масштабируемость.



О студии

краткая информация о молодой веб студии

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

Заказать сайт...

Наши Контакты

ICQ Online Studia386-574-654

Почта Online Studia admin@onlinestudia.com

Все хорошее только начинается!

Веб-Студия