Будущее World Wide Web

Настройки отображения темы Показывать по сообщений с сортировкой .
Выводить , отправленные .
Одна страница
Распечатать
4X_Pro
Создатель форума
Всего сообщений: 486
Зарегистрирован: 9 дек 2015, 19:20
Рейтинг пользователя: 40

1
2 марта 2017, 10:16#1
На мой взгляд, в будущем произойдет возврат к тому, с чего Web начинался — к статичным HTML-файлам, но в несколько измененном виде.
В частности, статичные файлы будут генерироваться админкой CMS и будут дублировать информацию, хранящуюся в базе (чтобы при необходимости их можно было быстро перегенерировать). При этом в файл будет сохраняться ключевая статическая часть контента, например, сообщение блога или карточка товара Интернет-магазина, а второстепенные динамические элементы (например, число сообщений по категориям, комментарии или отзывы, содержимое корзины) будут догружаться на страницу потом через AJAX. Это дает следующие преимущества:
1) скорость: главный контент очень быстро показывается пользователю, а пока тот начинает его просматривать, догружаются второстепенные элементы
2) модульность: динамическую часть сайта можно будет собирать блоков, причем серверная часть каждого из них (если таковая есть) не будет зависеть от остальных. Добавление нового компонента по сути дела, будет сводиться к его копированию на сервер и добавлению активного блока (о них дальше) в HTML.
3) масштабируемость: обработчики AJAX-запросов для блоков, при необходимости, можно будет разносить на разные сервера (по сути дела, получаем набор микросервисов).

Технически это можно реализовать так: в статической странице прописана асинхронная загрузка мастер-скрипта, который проверяет элементы HTML на наличие специального класса, который указывает на то, что это активный блок. Далее для всех этих блоков просматриваются data-параметры и в зависимости от того, что там указано, либо делается AJAX-запрос и в блок вставляется полученное с сервера содержимое, либо подгружается и выполняется JavaScript, отвечающий за работу блока. Т.е. получаем что-то вроде этого:
<div class="active_block" data-src="ajax.php?a=categories"></div>
<div class="active_block" data-script="/js/fancybox.js" data-params="{ 'delay': 5000}">здесь идут изображения</div>
То есть, по сути, получаем несколько модифицированный и более универсальный вариант загрузки скрипта по имени класса.

4X_Pro
Создатель форума
Всего сообщений: 486
Зарегистрирован: 9 дек 2015, 19:20
Рейтинг пользователя: 40

1
19 июля 2018, 03:28#2
Как выяснилось, уже есть реальные шаги в этом направлении, так называемые генераторы статических сайтов: Hexo, Hugo, Jackyll и многие другие. Работают они следующим образом: контент пишется в обычных файлах с помощью markdown-разметки, раскладывается по каталогам. В отдельный каталог кладется шаблон, после чего из командной строки запускается генератор, который формирует HTML-сайт (и может сразу же загрузить его на сервер по SSH, если указать соответствующие параметры командной строки). А комментарии делаются через AJAX — либо через сервисы наподобие Disquis, либо с помощью скриптов, сохраняющих комментарии на локальном сервере.
Более того, видел также англоязычный сервис, предоставляющие сходные функции для корзины Интернет-магазина. То есть можно сделать Интернет магазин на статике, а всю обработку заказа — через этот сервис.

Одна страница
Распечатать

У вас нет прав для отправки сообщений в эту тему.

Задать вопрос

Здесь можно задать мне вопрос или спросить совета по любой теме, затронутой в блогах или на форуме. После того, как я отвечу, вопрос и ответ появятся в соответствующем разделе. Но не забываем, что я — сторонник slow life, поэтому каких-либо сроков ответов не обещаю. Самые интересные вопросы станут основой для новых тем на форуме или записей в блоге.
Сразу предупреждаю: глупости, провокации, троллинг и тому подобное летит прямо в /dev/null.