Шаблоны веб-приложений

в 5:42, , рубрики: cms, веб-приложения, Веб-разработка, разработка CMS, шаблоны, метки: , , , ,

На днях была поднята интересная тема — о шаблонах веб-приложений. Давайте еще немного поговорим об этом.

Уважаемые коллеги, разрешите задать вам исключительно профессиональный вопрос…

Традиционно принято хранить фрагменты шаблонов веб-приложений в отдельных файлах. Поэтому техпроцессы работы с шаблонами выглядят так.

Первое создание шаблона

1. Подготовка и согласование дизайна
2. Верстка одного или нескольких демонстрационных HTML-файлов
3. Приемка
4. «Нарезка» — выделение многочисленных фрагментов и размещение их по множеству небольших файлов
5. Интеграция с CMS — где-то (хотя бы на бумаге или в голове верстальщика) хранится информация, где что, откуда, и в какой версии каждый конкретно этот шаблон в этом отображении.

Апдейт

1. Подготовка, верстка, приемка
2. Нарезка. Всего или только какой-то выбранной части?
3. Замена. Мат.

Использование шаблонов CMSкой

1. Скрипт в процессе выполнения читает десяток файлов. Если нет кеширования в ОЗУ (в переменной) — тогда читает их десятки или сотни раз.
2. Содержимое подвергается разбору через регулярные выражения, строковые функции, export() и т. д.
3. Результат подвергается конкатенации и возвращается браузеру.
Результат — скушано памяти по 1 кб на обработку каждого файла. Если алгоритм не предусматривает кеширования содержимого шаблонов в ОЗУ — при больших выборках заметно нагружается и ФС.

Альтернатива

Давайте просто обсудим альтернативный вариант: хранить все шаблоны в одном непорезанном файле, поместив внутрь теги для парсера.

Тогда процессы изменятся так.

Первое создание шаблона

1. Подготовка и согласование дизайна
2. Верстка одного или нескольких демонстрационных HTML-файлов
3. Приемка — показываем файлы как есть, и их же 1:1 кладем в ФС CMSки
4. Тут уже ничего не надо делать
5. Тут уже ничего не надо делать

Апдейт

1. Подготовка, верстка, приемка
2. Нарезка. Всего или только какой-то выбранной части?
3. Заменить один файлик

Использование шаблонов CMSкой

1. Скрипт в читает один файл. Шаблон в строке разбирается на фрагменты и лежит в ОЗУ.
2. Содержимое подвергается разбору через регулярные выражения, строковые функции, export() и т. д.
3. Результат подвергается конкатенации и возвращается браузеру.

В среднем шаблоны весят 3-5КБ. Разобрать его по тегам — не дороже, чем список данных с тегами отрендерить.

И главное:

  • Нет необходимости нарезать шаблоны на фрагменты
  • Удобнее показывать — все на одной странице. Если хочется — можно сделать и на нескольких
  • То, что согласовано — попадает в продакшн «как есть»
  • В ФС лежит цельный шаблон, после разбора в ОЗУ — фрагменты.

Коллеги, что вы думаете об этом?
Может быть где-то уже видели такое решение?
Какие есть или могут быть плюсы и минусы?

Спасибо!

Автор: customtema

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js