В данном случае я расскажу немного о другом. Моё интерес к ИТ и образование в сфере ВТ (неоконченное впрочем) позволяет хоть как-то ориентироваться в современных информационных технологиях. Во времена моей учёбы 96 -99 годы, я стал постоянным читателем журнала «Компьютерное Обозрение» http://www.itc.ua/, особенно мне нравятся статьи Андрея Зубинского. Из этих статей я почерпнул очень много интересной информации.
Ещё во времена моих упражнений с ассемблером я был пристрастен к патологической утилизации программного кода, зачастую мои программы состояли из целой тучи условно/безусловных переходов, были весьма компактны и не совсем изящны :)…
В дальнейшем я ознакомился с такой вещью как – шаблоны страниц:
1. «вкрапления» XTML в код.
2. вставка кода в шаблон.
3. Модель – Шаблон – Контроллер.
4. компонентный подход.
Ознакомился, читая «PHP5» Д. Котерова и А. Костарева глава 46. В главе 47 дано описание Шаблонизатора – пятый вариант и дальнейшее развитие идеи компонентного подхода. За подробностями обращайтесь к источнику информации.
А теперь главное. Сборка HTML страницы происходит на стороне источника и отдаётся страница приёмнику уже в собранном виде. Чем это плохо? А плохо тем, что ограничивает возможности кэширования страниц на стороне приёмника, ведь созданные по одному шаблону страницы (с одинаковым URL) могут содержать разный контент. Проблема возникает и при индексировании таких страниц поисковыми системами.
(Кстати, как сейчас с этим делом?)
Возможный выход – переход к сборке страницы на стороне приёмника.
Система становится трёхэлементной: Источник(и) – Компилятор – Приёмник. Всё три элемента могут располагаться как на разных машинах, так и на одной. Сейчас реализован только вариант, при котором Источник и Компилятор находятся на одной машине, а Приёмник на другой. Более интересным является другой Источник на одной машине (Источники на многих машинах) – Компилятор и Приёмник на одной машине. Или ещё вариант, когда все элементы на разных машинах, в этом случае возможен доступ к одному Компилятору с разных Приёмников.
Реализация – отдельный специальный Web-сервер запущенный на стороне пользователя или где-то в сети, например на севере провайдера… Его задача – это кэширование данных и сборка страниц на основе полученных шаблонов страниц.
Шаблон страницы содержит данные по оформлению страницы и ссылки на контейнеры данных, которые составляют содержимое страницы. Контейнер – это бинарный поток данных, аналогично картинке, должен содержать дополнительную информацию: размер, дату создания контейнера и ссылку на XML с описанием содержимого контейнера, где описание тоже контейнер.
Фактически в кэше будет храниться всё, что хоть раз было загружено в браузер, в том числе и сами шаблоны сборки. Такая система позволит отключать ненужные элементы страницы путём редактирования шаблонов и замены оригинала авторским вариантом, с отслеживанием версий шаблонов и т.д.…
Данная идея таит в себе многие дополнительные возможности, в том числе и для строителей светлого f2f будущего.