Сколько страниц
и сайтов вы успели посетить за время пребывания в глобальной сети? Кто-то
больше, кто-то меньше, я сам не берусь сосчитать, сколько их было, многие,
возможно, уже не существуют. А задумывались ли вы над тем, что представляет
собой каждая страница, пробовали заглянуть внутрь сайта?
Хочу предложить
вам последовать за мной, а я попытаюсь открыть вам одну из сторон создания
сайтов, их внутреннего устройства. Мы не будем сильно углубляться в технические
детали, но я постараюсь, чтобы вы поняли главное - чем отличаются статические
сайты от динамических, в чем их преимущества и недостатки, какой способ
разработки сайта выбрать.
Все сайты в сети
можно разделить на две большие группы: статические и динамические сайты. С точки
зрения посетителя сайта порой не важно, на какой странице он находится,
статической или динамической, иногда даже трудно точно это определить. Но я хочу
рассмотреть такое разделение с точки зрения разработчика - создателя сайта.
Для начала
следует определиться с понятиями, что же собой представляют статические и
динамические сайты.
Что такое статический сайт?
Статической
я буду называть страницу, которая целиком хранится на сервере и показывается
посетителю в своем неизменном виде (следует учесть, что статическая страница
может содержать некоторые изменяемые элементы, например баннеры, однако она все
равно остается статической).
Для большей
ясности приведу пример. Представьте, что вы сохраняете какую-либо страницу на
свой компьютер. Допустим, теперь она хранится в файле "Page.html" Если вы
откроете ее при помощи броузера, то увидите все наполнение страницы. Вот
примерно в таком виде (как при сохранении на локальный компьютер) статические
страницы хранятся на сервере, который только выдает их посетителю.
Статическим я
буду называть сайт, большинство или все страницы которого являются статическими.
Таких сайтов
довольно много, с них, можно сказать, начинался интернет.
Что такое динамический сайт?
Динамической
я буду называть страницу, формируемую сервером из нескольких частей или
получаемую путем внесения либо изменения данных в страницу.
Рассмотрим
процесс генерации динамической страницы подробнее. Если статическая страница не
претерпевает практически никаких изменений и попадает на экран к посетителю в
своем "первозданном" виде, то динамической страницы, такой, как ее видит
человек, на сервере не существует. Она собирается несколькими различными
способами из данных, хранящихся на сервере, и только после этого показывается
посетителю.
Как же она может
собираться? Давайте рассмотрим:
-
Первым вариантом может
быть объединение нескольких (двух и более) отдельных частей в одну страницу
- это самый простой способ генерации.
-
Вторым вариантом является
заполнение шаблонной страницы какой-либо информацией, хранящейся отдельно
или получаемой в результате работы алгоритма (например, в результате
вычислений).
-
Третьим, и, пожалуй, самым
распространенным вариантом является сочетание первых двух во всевозможных
вариациях, т.е. страница собирается из нескольких кусочков, в которые при
этом вносятся различные изменения.
Следуя
предыдущим определениям, динамическим я буду называть сайт, большинство или все
страницы которого создаются динамически.
Приведу еще одну
аналогию, чтобы все встало на свои места. Представьте, что смотрите фильм. Кадры
сменяют друг друга, сливаясь в одну живую картинку, но если посмотреть на
процесс воспроизведения подробнее, вы поймете, что каждый кадр был заранее
сохранен, и теперь вы просто видите их последовательность. Вы ничего не можете
изменить, не можете вмешаться в события фильма. Уже догадались к чему я клоню?
Да, он аналогичен статичному сайту, страницы которого точно так же как кадры
фильма, были заранее созданы его автором.
На что же в
таком случае будет похож динамический сайт? На компьютерную игру. В ней есть
определенный сценарий, свои персонажи и интерьеры, но финальная картинка
получается только после совмещения всех этих частей, причем не без вашего
участия. То, что вы видите на экране, зависит от ваших действий. Точно так же
динамический сайт реагирует на ваши действия на своих страницах и собирает из
кусочков необходимую вам страницу.
С принципом
разделения мы разобрались, давайте перейдем к разбору плюсов и минусов обоих
подходов относительно друг друга.
Вы можете
спросить, а что, если на сайте статических и динамических страниц примерно
одинаково? Я смею вас заверить, что таких сайтов довольно мало, да и в нашем
случае это большой роли не играет. Просто те преимущества и недостатки, которые
я рассмотрю чуть ниже, будут относиться не ко всему сайту, а к его
соответствующей части.