Направления развития и "эры" технологий Web

Всемирная паутина (www), или просто Web, существует уже более двух десятков лет. За это время происходили изменения в технологиях представления информации и взаимодействия с пользователем. Можно сказать, что Веб построен на протоколах, контенте (информации и данных), серверных и клиентских скриптах.

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

Web все больше поглощает в электронную форму существования разнообразную деятельность человека. Невозможно все многообразие форм информации и взаимодействий объектов реализовать одним инструментом. Чем больший охват происходит, тем разнообразнее требуются технологии. Для web-программиста становится важнее понимать в какой ситуации, какой язык, библиотека и т.п. наиболее уместны, а для разработчиков этих языков делать их «интерфейс» более простым и понятным и, что более важно, стандартным. Сложный многофункциональный сайт использует целый ряд технологий. Прикручивание одной функциональной "детали" сайта к другой должно проходить быстро и безболезненно. Где-то пол века назад фирма IBM произвела революцию в компьютерной технике своими "Системами-360", введя стандарты. Это позволило "прикручивать к компьютеру что угодно, лишь бы разъемы совпадали". Наблюдается ли подобное в www? Насколько уместна такая аналогия?

Внедрение любой, даже совершенной технологии в обществе всегда натыкается на человеческий фактор. Бывает сложнее не "изобрести новую методику", а внедрить ее в организации, обществе и т.п. Ряд людей остается не восприимчивым к новому, тяжело обучается. Характерен ли такой сдерживающий фактор для Web-разработки? Равна ли некая гипотетическая скорость развития Web, развитию всех технологий цивилизации? Свобода и демократичность сети, отсутствие социальных сдерживающих факторов позволяет легко проявляться передовым идеям. Интернет позволяет заинтересованным и способным людям объединяться, создавая более крупные проекты.

Проследим основные этапы развития технологий Web.

90-е годы XX века

Web-содержимое статично, для его структуризации и оформления используется язык гипертекстовой разметки HTML. Однако главное, что дает HTML, заключается в гипертексте: web представляет собой не отдельные документы, а взаимосвязанную сеть документов. Сами документы остаются статичными.

Начало XX века

Это эра LAMP = Linux + Apache + Mysql + PHP. Важнейшим компонентом web-технологий становятся базы данных, хранящие содержимое сайта. Страницы динамически формируются с помощью языка программирования на сервере в зависимости от приходящих запросов пользователя. Далее на клиентский компьютер отправляется готовый HTML-документ. На сегодняшний день помимо PHP используется ряд других языков программирования (Ruby, Python).

Конец первого десятилетия XX века

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

При этом HTML, LAMP и JavaScript зачастую работают вместе, обеспечивая оптимальную функциональность сайта.