Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какой вид шаблонизаторов лучше? XSLT/Smarty/etc 
:(
    Опции темы
 
Какой вид шаблонизации Вы предпочли бы использовать?
XSLT [ 7 ]  [17.95%]
Собственный язык (вроде Smarty, etc.), XSLT не знаю [ 9 ]  [23.08%]
Собственный язык (вроде Smarty, etc.), XSLT знаю [ 4 ]  [10.26%]
PHP — сам по себе замечательный язык для шаблонизации [ 8 ]  [20.51%]
Использую свой шаблонизатор, не относящийся ни к одному из перечисленных видов (опишите?) [ 5 ]  [12.82%]
Я не знаю, что такое шаблонизатор [ 5 ]  [12.82%]
Я не пользуюсь шаблонизаторами [ 1 ]  [2.56%]
Всего проголосовавших: 39
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
dm9
Дата 28.5.2007, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 2
Всего: 137



Добрый день.

У нас возник вопрос по поводу использования шаблонизатора в PHP-проекте. Проект достаточно длительный; учитывать необходимо также и то, что проект будет OpenSource, и в нашей разработке придётся разбираться сторонним разработчикам, вне команды.

Мы рассматриваем два варианта. Первый — XSLT (модули/модели, соответственно, пишут данные в DOM). Альтернатива — смарти-подобный шаблонизатор, который получает на вход какой-то массив или объект (или набор массивов/объектов), и затем с этими данными что-то делает (вывод переменных, проверка условий, циклы, подшаблоны).

Преимущества XSLT, как мне кажется, — открытость стандарта, то есть верстальщики этот язык уже знают (сколько их, которые знают?), поддержка редакторами (Code insight, подсветка синтаксиса).
Преимущества более традиционного шаблонизтора — привычность для верстальщика (?), бо́льшая простота, то есть меньший порог входа.

Цель данного опроса — посмотреть, а действительно ли так мало людей знают и используют XSLT, как нам кажется? Ну и если будут какие-то ещё замечания по теме, высказывайтесь…

Вопрос, в общем-то, не совсем по PHP, но всё же хочется провести опрос среди местных обитателей. Мне кажется, это относится не к вёрстке.

PM MAIL ICQ   Вверх
xolod
Дата 28.5.2007, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 148
Регистрация: 24.5.2005
Где: Когда: Что:

Репутация: 4
Всего: 13



Начинать что-то с нуля только на XSLT. Это 100% радости. Остальное умрет рано или поздно.

Это сообщение отредактировал(а) xolod - 28.5.2007, 12:00
PM MAIL   Вверх
Replicator
Дата 28.5.2007, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 30.4.2006
Где: Outer Heaven

Репутация: нет
Всего: нет



Когда мне понадобилось, XSL освоил за пол-дня. Так что используй XSLT и не парься - работать с ним очень легко.
--------------------
 
PM WWW ICQ   Вверх
Platon
Дата 28.5.2007, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1801
Регистрация: 25.4.2006

Репутация: нет
Всего: 40



Как знать, а я довольно неплохо наловчился работать с PHP. Пробовал поработать со Смарти, но сразу немило сердцу стало. Всяких лишних действий куча, а в итоге получается тот-же php код. Так зачем делать надстройку? Лучше сразу правильно писать нормально на PHP.

Другой вопрос насчет XSLT, что-то все о нем отзываются дружелюбно. Надо тоже посмотреть в его сторону, может действительно он такой уникальный, и может действительно это решение, но если он требует доп ресурсов... то ф топку.
PM MAIL ICQ   Вверх
vasac
Дата 28.5.2007, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 8
Всего: 36



Смотря для чего шаблонизатор. ИМХО, в общем плане smarty перед чистым PHP (если уметь им пользоваться) вообще ничто и нигде. Другое дело, что главный аргумент смартовцев, это то, что люди ничего не смыслящие в PHP могут с легкостью работать со смарти. Я так и не понял за счет чего, но это уже другой разговор. Если ориентироваться именно на технически не подкованных людей, то XSLT вообще тут не в тему.
PM WWW   Вверх
Vaulter
Дата 28.5.2007, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



сделайте сразу беспроигрышный такой вариант:
есть абстрактный класс-прослойка, шаблонизатор
который уже может, в зависимости от используемой темы (theme, skin) использовать свой драйвер:
в частности XSLT, Smarty или любой другой.


--------------------
PM MAIL WWW ICQ   Вверх
dm9
Дата 28.5.2007, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 2
Всего: 137



Vaulter, не согласен.
А) Это надо поддерживать одной команде верстальщиков, и UI у системы должен быть един. То есть два раза (один под XSLT, один под Смарти) реализовывать механизм, скажем, работы с тэгами (это большой механизм, и он будет в разных частях системы) — это бээ.
Б) Это потом ещё поддерживать сообществу. Человек с ума сойдёт, переключаться между вариантами шаблонизации.

Добавлено через 3 минуты
Кроме того, это подвязка на принципы работы модулей. Либо они генерируют XML, либо объекты/массивы. Если в одном месте будет так, в другом так — это сойти с ума. Если будем использовать XML, логично сразу делать выборки DB->XML почти напрямую. То есть получается, что механизм генерации данных Моделью зависит отмеханизма реализации View.
PM MAIL ICQ   Вверх
Daevaorn
Дата 28.5.2007, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Я выбрал 3ий вариант. Заставлять людей писать вручную xml это не гуманноsmile Хороший шаблонизатор, который не позволяет слишком много делать и держит пользователя в рамках иключительно презентации и простой логики- это замечательная вещь. И дизайнеру проще и программисту - возможность на 100% реализовать MVC.
PM MAIL WWW   Вверх
Rock
Дата 28.5.2007, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 13.1.2005
Где: Краснодар

Репутация: 0
Всего: 1



XSLT очень мощная и удобная штука, в своих проектах только его и использую, позволяет не только реализовать MVC, но и выдавать 100% валидный xhtml, что немаловажно. Ко всему прочему, в системе, построенной на связке XSLT+XML проще использовать Ajax технологию.
со с Smarty работал, штука тоже удобная, да и шаблоны написанные на чистом php не хуже. 
Конечно же, писал свой шаблонизатор, но это было изобретение велосипеда, с целью повышения квалификации, не больше...


Вообщем мой выбор XSLT.

PM MAIL ICQ   Вверх
mclight
Дата 5.6.2007, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 6.7.2005
Где: Baku, Azerbaijan

Репутация: 1
Всего: 2



а где можно подучить документацию насчет XSLT-шаблонизатора
--------------------
Как я решал подводные камни Cakephp и не только
PM WWW ICQ MSN   Вверх
Golda
Дата 5.6.2007, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 20
Всего: 42



XSLT - не совсем шаблонизатор. В php эту технологию еще надо привязывать отдельно. А хорошие ресурсы:

http://www.zvon.org/xxl/XSLTutorial/Output/contents.html - тьюториал
Ну а самые правильные справочники - здесь http://www.w3.org/Style/XSL/  smile 


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
WIPS
Дата 5.6.2007, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 22.5.2006
Где: Украина, Киев

Репутация: 1
Всего: 8



Цитата(Golda @  5.6.2007,  08:32 Найти цитируемый пост)
XSLT - не совсем шаблонизатор.

Я тоже так считаю, хотя знаком с XSLT мало.

А по поводу "классических" шаблонизаторов, неужели никто ничего кроме смарти не использует?! На мой взгляд он сильно громоздкий, да и вобще идея активного шаблона мне не нравится.

Я напр. использую PEAR-овский IT_Template.


Цитата(Rock @  28.5.2007,  16:53 Найти цитируемый пост)
XSLT+XML проще использовать Ajax технологию.

Если сильно не привязываться к "Х" а аббревиатуре "AJAX", то AJAX - это не всегда XML smile
--------------------
Автопроизводители, машины, марки, модели!
PM MAIL WWW ICQ Skype   Вверх
teroni
Дата 5.6.2007, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

Репутация: 8
Всего: 22



Цитата(Golda @  5.6.2007,  09:32 Найти цитируемый пост)
http://www.zvon.org/xxl/XSLTutorial/Output/contents.html - тьюториал
 То же самое на русском - http://www.zvon.org/xxl/XSLTutorial/Output_rus/contents.htm

PM MAIL   Вверх
mclight
Дата 5.6.2007, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 6.7.2005
Где: Baku, Azerbaijan

Репутация: 1
Всего: 2



а мультиязычность тоже суда относится?
стоит ли использовать шаблонизатор, если мне только мультиязычность нужна?

Это сообщение отредактировал(а) mclight - 5.6.2007, 14:52
--------------------
Как я решал подводные камни Cakephp и не только
PM WWW ICQ MSN   Вверх
Golda
Дата 5.6.2007, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 20
Всего: 42



Мультиязычность удобно реализовывать с помощью XSL. Готовите один XSL-шаблон и процесите им разные XML. Для каждого языка свой XML


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0891 ]   [ Использовано запросов: 23 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.