Отличии динамических веб страницы от статических

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

В этой статье пойдет речь о тонкостях понятий динамических и статических веб страниц. Но прежде небольшое отступление.

Всемирная паутина

World Wide Web (WWW) - это сеть информационных ресурсов по всему миру. Под ресурсом здесь понимается любая информация доступная пользователям сети. Это может быть как простой текстовый документ, так и программа, архив или некий сервис для пользователя (например, сервис предоставления точного времени).
Обычно пользователи понимают под Интернетом набор сайтов, которые можно посетить через браузер и которые связаны между собой ссылками (гиперссылками).
Это лишь один из многих аспектов сети Интернет. Однако, когда говорят о веб дизайне, то имеют ввиду создание именно сайтов доступных для пользователей через браузер. Поэтому мы сосредоточимся именно на документах на языке html.

Если говорить упрощенно, то браузеры (browsers) это программы отображения HTML документов. То есть, когда вы набираете в строке адреса какой-либо сайт, то браузер загружает html код и отображает его вам как веб страницу. В настоящее время самые популярные браузеры это:

  • Microsoft Internet Explorer(IE)
    Безусловный лидер по количеству людей, которые его используют. По различным оценкам доля этого браузера составляет 85-95%. Последнее время его теснит Firefox, но с выходом IE7 у Firefox'а могут быть проблемы в дальнейшем отвоевывании рынка.
  • Mozilla Firefox
    Возникший из пепла умирающего Netscape Navigator в конце 90-х этот браузер стремительно набирает обороты. Его популярность это сумма двух составляющих: открытый код и огромное количество расширений (plugin'ов), которые может написать любой желающий. Некоторые из расширений - просто шедевры. Лично я пользуюсь расширением HTML Validator, которое показывает мне html ошибки на веб странице с подробным описанием ошибки. Это очень помогает при разработке веб страниц.
    Если вы не пользовались Firefox, рекомендую хотя бы попробовать.
  • Opera
    Очень симпатичный браузер от скандинавских программистов. Бесплатный и весьма богатый на функции.

Также существует большое количество браузеров, которые на самом деле используют библиотеки от Internet Explorer. Поэтому я и не включил их в список, хотя многие из них очень популярны.

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

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

По поведению документа в браузере пользователя, различают:

  • Статические html страницы
    Статические - означает, что страница выглядит всегда одинаково, не зависимо от действий пользователя. Например, меню организованно ссылками на отдельные страницы, а не выпадающим списком.
  • Динамические html страницы
    Эти страницы уже могут реагировать на действия пользователя и изменяться. Например, при щелчке по тексту может показываться всплывающий блок текста с переводом слова. Кстати, именно так реализован один из плагинов-переводчиков для браузера Firefox.

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

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

Самый распространенный язык для создания динамики веб страниц - это JavaScript. (Не путайте с языком программирования Java. Это две совершенно разные сущности.)
Реже используется VBscript(visual basic script). (Microsoft как всегда пошла своим путем.)

По способу создания документы делят опять на статические и динамические.

Статическими называют страницы, если они лежат на сервере в html виде.
А динамическими называют те, которые генерируются "на лету" по запросу браузера.

Как легко увидеть, если на сервере лежит обычная html страница, то такой подход сильно ограничен. Например, у вас есть интернет-магазин, и вы добавили новый товар. Если ваш магазин состоит из "статических" html страниц, то вы должны вручную подправить несколько других страничек. Как минимум это каталог товаров и, наверное, форму заказа. Если у вас кончился какой-либо товар, то опять надо обновлять сайт. Это очень неудобно. Поэтому вы не найдете ни одного интернет магазина на html. (Хотя и можно придумать систему, которая автоматически перегенирирует сайт при изменении товара. Но это не очень элегантное решение и я о таком никогда не слышал).

Если ваш сайт содержит часто меняющийся контент (content - информация на сайте), то вам на помощь придут скрипты, выполняющиеся на сервере. И это ключевое отличие этих скриптов, от описанных ранее (тех, что написаны на JavaScript). Работает это следующим образом:

  1. Браузер запрашивает у сервера документ
  2. Сервер определяет, что документ является скриптом и запускает его на выполнение
  3. Скрипт генерирует html страницу
  4. Сервер отправляет сгенерированную страницу браузеру, так что тот и не догадывается, что на сервере отработал скрипт

Существует несколько языков программирования, на которых могут писать скрипты, которые генерируют "динамические" страницы. Самые распространенные из них:

  1. Perl
  2. SSI
  3. PHP
  4. ASP
  5. Python
  6. Java
  7. Бинарный код (программа на Си или С++ скомпилированная в исполняемый код)

Каждый из этих языков имеет свои особенности применения. Писать скрипты можно на любом языке. Главное знать его сильные и слабые стороны и использовать их эффективно.

Как правило если вы видите, что адрес страницы заканчивается на .html или .htm, то это обычная статическая страница. (Можно конечно настроить сервер так, чтобы он исполнял скрипты, которые заканчиваются на эти же окончания, только это не практично. Все таки .html и .htm - это стандарт и переопределять эти окончания не стоит.) Если же вы видите любое другое окончание, то это скорее всего скрипт. Например, скрипты на языке PHP имеют обычно расширение .php, на языке Perl - .pl, ASP - .aspx
Если же адрес не содержит имени страницы, то сервер будет использовать документ заданный по умолчанию (обычно это либо index.html либо index.htm либо index.php).

Надо сказать, что сейчас все больше набирает силу гибридная система. Название у нее, как у голландского футбольного клуба - AJAX, что означает: Asyncronous JavaScript And XML (Как расшифровывается название голландского клуба я не знаю:)). Эта технология позволяет скриптам на JavaScript обращаться к какому либо скрипту на сервере и получать информацию с сервера. Это в свою очередь, дает пользователю гибкость и позволяет перезагружать только часть содержимого страницы, а не всю ее полностью (что значительно экономит трафик).

Выводы

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

Если же у вас на сайте часто меняющаяся информация, то выбор следует остановить на использовании скриптов.
Вот расхвалил вам скрипты. Однако, у скриптов есть один минус: они требуют дополнительных ресурсов от сервера для своей работы. Если html страничку надо просто прочитать с сервера и отправить браузеру, то скрипт надо сначала запустить и выполнить. К тому же, очень часто скрипты используют систему управления базой данных (СУБД) для хранения изменяющихся данных, что создает дополнительную нагрузку.

Еще статьи на тему: Веб дизайн

<<Предыдущая сатья | Следующая сатья>>

S-PRO студия веб дизайна

 

Hosted by uCoz