| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Другие движки / фрейморки > Темплейт движки |
| Автор: 02077461 1.7.2008, 17:31 |
| Добрый вечер. Поделитесь пожалуйста соображениями по теме топика. Какой движок лучше и обязательно чем он лучше или когда он лучше. Сразу могу сказать что не нравится в smarty: во-первых не нативен (с этим могу смериться), в темплейте присутствует логика (недопустимо). пользовался ptp_templates, всем доволен, таким должен быть движок, но продукт более не поддерживается и содержит баги. Поделитесь пожалуйста опытом, именно опытом использования. |
| Автор: Feldmarschall 1.7.2008, 17:35 |
| Ну тогда прямая дорога в blitz. Больше по таким критериям ничего не найдется. Странно даже, что он не был найден как замена php_templates А что значит "не нативен"? |
| Автор: SamDark 1.7.2008, 17:51 | ||
php_templates тоже не нативен.
Допустимо, если это логика отображения. А вообще вот почитать: http://forum.vingrad.ru/forum/topic-54581.html |
| Автор: 02077461 1.7.2008, 18:19 |
Исполняется не операционной системой а на более абстрагированном уровне. Согласен, но на практике не вызывало особых трудностей внести в код например $type = 1-$type и подобные вещи. Конечно, когда дизайнер не знает о программисте и наоборот -- нужно, но такой подход к ведению проекта -- повод задуматься Добавлено через 5 минут и 35 секунд Ошибаетесь |
| Автор: 02077461 1.7.2008, 18:35 | ||
не осилил. злющий балаган. Большое спасибо! |
| Автор: Feldmarschall 1.7.2008, 18:58 |
| Ну, на самом деле, логика-то в шаблоне всегда есть. Речь об операторах, которые эту логику реализуют. Вот их может не быть. В этом случае верстальщик должен работать в более тесном контакте с программистом, чтобы тот знал, что блок <BOOKS> означает вывести, если есть книжки, которые покупают вместе с, а блок <NEWS> - это проитерировать новости. А вообще, конечно, template do's и dont's стоит обсуждать только если есть единое мнение, для чего они вообще нужны. |
| Автор: MuToGeN 11.7.2008, 04:13 |
Логика визуализации и бизнес-логика - разные вещи. Первое всегда будет присутствовать в шаблоне. По сабжу: 1. XSLT. В отличии от php_templates, smarty и прочих штук эта вещь стандартизированная. 2. Очень понравился подход к шаблонизации, используемый в http://codeigniter.com/. Все сводится к определенным правилам кодинга, не более. Не используется никаких лишних наворотов, но все понятно как программисту, так и верстальщику. |
| Автор: Anarki 28.7.2008, 01:15 |
| Smarty компилирует шаблоны во вполне нативный код. |
| Автор: HackMan 28.7.2008, 07:53 |
| Объясните, пожалуйста, понятнее, что значит нативный? Вообще, как по мне, задача шаблонизатора сводится к тому, что бы в готовый html-коcтяк вставлять динамически-изменяемые данные. HTML код в самом шаблоне может изменяться не зависимо от того, как происходят рассчёты вне шаблона, и дизайнер/верстальщик (хотя, зачастую, на практике программист и верстальщик - один и тот же человек) сможет составлять свои макеты не парясь о том, как там работают скрипты программера, а пограммисту в свою очередь не надо волноваться за то как данные будут смотреться на сайте. Подсчитал какие-то данные, передал их в шаблонизатор и на этом его работа заканчивается. Это помогает не мешать всё в одну большую кашу. Рассчёты в одном месте, вывод - в другом. Добрая половина шаблонизаторов парсит шаблон и заменяет конструкции типа <%variable%> на значение соответствующей переменной. То есть сначала шаблон отпарсится шаблонизатором, а это лишняя работа, гонять туда-сюда, когда можно написать просто <?php echo $variable; ?>. Ну и пусть что прйдётся написать на несколько символов больше. Зато прирост в скорости в 2-3 раза. В шаблонах могут потребоваться разве что циклы для вывода табличных данных, элементов меню или чего-нибудь такого, и подключение другого шаблона внутрь себя. Ну, максимум - логический оператор if. PHP со всеми этими делами справляется на ура и максимально быстро. Тесты производительности различных шаблонизаторов можно посмотреть http://bench.limb-project.com/. Как видно, PHP - абсолютный лидер |
| Автор: Anarki 31.7.2008, 13:02 |
| Нативный в данном случае это значит, что в шаблоне содержится обычный php код. Ты привел пример пассивных шаблонов, у них есть ограничение на оформление(xhtml) выводимых данных, самый простой пример это зебра. |