17.06.2009, 23:16
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
Template Engine for PHP
Пару недель назад разобрался со Smarty, неделю спустя он начал меня жутко раздражать и появилось желание написать свой шаблонизатор. Хотельсь бы узнать ваше мнение по этому поводу.
Возможно Zend_View кото-то пользовал, буду рад если вы оставите свой отзыв об этом движке.
|
|
17.06.2009, 23:26
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
писал я на своей предыдущей работе шаблонизатор
потом возникла проблема, что надо как-то перепоручать верстку левым людям, не отдавая им движок
я поднял с полки самопальный шаблонизатор в полдесятка строк, чуть доработал, чтобы принцип шаблонизации был похож на большой движек
как итог, этот мини-шаблонизатор они до сих пор используют, и кажется не менее активно, чем основной
|
|
18.06.2009, 01:12
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
Вот я тоже решил облегчённую версию придумать, синтаксис как и у Smarty будет. Сейчас реализована поддержка переменных, атрибутов default, инклуды, достовно интерпретируемые блоки, вставка ПХП кода и файлы конфигураций. Ещё нужно с кеширование и компиляцией шаблонов разобраться, регулярные выражения оптимизировать и думаю этого вполне хватит. На кой в Smarty такое колличество инструкций вообще не понятно, можно просто обработку ПХП в шаблонах использовать.
Допишу - буду со Smarty скоростями мерятся, посмотрим кто быстрее.
|
|
18.06.2009, 10:55
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от Tim
|
Возможно Zend_View кото-то пользовал, буду рад если вы оставите свой отзыв об этом движке.
|
Хороший движок. Как минимум тем, что не добавляет свой язык, а пишется все на PHP. Если еще и на весь Zend глянуть, то и многое другое писать не придется
|
|
18.06.2009, 14:49
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
а что скажешь про blitz? Интересует подход (минимальная область соприкосновения верстальщика и программиста), а не производительность ( статья если не читал)
|
|
18.06.2009, 15:07
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от x-yuri
|
а что скажешь про blitz?
|
Я? Если я, то я такого не видел Да и не хочу уже ничего видеть. После Zend_View как глаза открылись. Нафига придумывать язык шаблонов, если PHP сам по себе язык шаблонов. Чем <{$var}> отличается от <?= $this->var ?>? Верстальщику что язык шаблонизатора учить, что самые основы PHP.
Некоторые вещи, согласен, с Zend_View не сделаешь, но есть еще Zend_Layout.
|
|
18.06.2009, 23:27
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
x-yuri,
Прочитал статью о blitz, мне кажется идеи очень хорошие. Сложносочинённые конструкции в шаблонах не только верстальщику жизнь усложняют, потом и программисту, чтобы логику понять, приходится в HTML лазать.
К Zend Framework я тоже присмотрелся - вешь очень хорошая. Свой шаблонизатор всё же допишу. Возможно это не самая лучшая позиция, но я не люблю чужой код, особенно в таких объёмах как у Smarty и прочих шаблонизаторов.
|
|
19.06.2009, 17:33
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Цитата:
|
Я? Если я, то я такого не видел Да и не хочу уже ничего видеть. После Zend_View как глаза открылись. Нафига придумывать язык шаблонов, если PHP сам по себе язык шаблонов. Чем <{$var}> отличается от <?= $this->var ?>? Верстальщику что язык шаблонизатора учить, что самые основы PHP.
|
я тоже в какой-то момент пришел к такому выводу. А блочные шаблонизаторы мне вообще казались какой-то устаревшей штукой (типа когда-то было так)
Но этот чувак заставил меня сомневаться. В какой-то степени потому, что он достаточно опытный. А его взгляд на шаблонизаторы скорее со стороны менеджера, чем программиста. Как я понимаю: каждый должен заниматься своим делом, смежные области должны быть минимизированы. Если версткой занимается программист, может native php/Zend_View/smarty и лучше. Но если есть отдельный верстальщик...
Кроме того, это логичное продолжение принципа "разделяй и властвуй": ведь css почему-то в отдельный файл выносят. Хотя в простых случаях удобнее когда css смешан с html (не надо переключаться на другой файл, можно прямо в html все исправить), но обычно все не так просто и лучше не смешивать эти вещи
а в блочных шаблонизаторах никакого языка-то ведь и нету: в основном есть просто блоки и подстановка переменных
|
|
19.06.2009, 17:48
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Не надо смешивать логику шаблона и логику приложения. То, что шаблон на другом языке еще не значит, что он не будет вмешиваться в логику приложения. А если у шаблона будет мало возможностей, то приложению придется вмешиваться в логику шаблона.
Статью я, честно говоря, ниасилил. Слишком много строчных букаф, да и мыслью растекается по дереву.
(Кстати, Gvozd, типичный клинический случай твоего стиля написания текста. Читать невозможно вообще.)
|
|
19.06.2009, 18:38
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
Сообщение от Kolyaj
|
(Кстати, Gvozd, типичный клинический случай твоего стиля написания текста. Читать невозможно вообще.)
|
Запомню.
К сожалению не смог оценить статью, потому что страница вешает оперу на пару секунд, при малейшей попытке прокрутки текста.
|
|
|
|