LINUX.ORG.RU

[C++] Реквестирую дискуссию о шаблонизаторах.

 


0

1

Сам пригляделся к CTPP (жаль, нет ебилдов в основном дереве) и ctemplate.

Вроде как CTPP позиционируют как быстрый, мощный и с биндингами к C++/Perl/Python/PHP. CTemplate - от Корпорации Добра, а значит - надежно и глобально, только вот синтаксис бесит.

Какие могут быть подводные камни? Кто с какими работал и как впечатления?

Может, понасоветуете годных альтернатив?

★★★★★

Последнее исправление: Chaser_Andrey (всего исправлений: 1)

>не в тех.раздел, так как нет конкретного тех.вопроса
Тех. дискуссия есть? Значит марш в девелопмент.

Ramen ★★★★
()

правильный «шаблонизатор» - XSLT. Указанные в топике CTPP и ctemplate на его фоне смотрятся как отрыжка php :)

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

> правильный «шаблонизатор» - XSLT

Это не так. XSLT (почти) идеальный инструмент для преобразования XML-документов, но это не соответствует предметной области шабланизаторов. Использование XSLT в качестве шаблонизатора это как раз костыль, притягивающий хороший инструмент для решения не типичной для него задачи.

Указанные в топике CTPP и ctemplate на его фоне смотрятся

как отрыжка php



PHP это и есть шаблонизатор, просто он предназначен для смешивания логики и представления, что не есть хорошо.

archimag ★★★
()
Ответ на: комментарий от archimag

это не соответствует предметной области шаблонизаторов

это что у них за уникальная предметная область ? на сайтах позиционируются как средство отделения логики от представления, а в CTPP прямо заявлено - построение web-интерфейсов. Это-ж прям таки вотчина XML, XSLT и иже с ними. Опять-же стоит заметить что XSLT это часть стека технологий. Которые функционально кроют упомянутые «шаблонизаторы» как бык овцу.

единственное преимущество CTPP и ctemplate - они быстрые, и не требуют от программиста осведомлённости о XML DOM и прочим. И область назначения - быстро сделать html и скормить его в поисковик, не сильно заморачиваясь интерфейсами, надёжностью и гибкостью приложений.

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

> это что у них за уникальная предметная область ?

Она не уникальная, наоборот, слишком банальная для того, что стоило привлекать такие тяжеловетные технологии. Использование XSLT приводит к совершенно неоправданному превращений вещей простых в громоздкие.

построение web-интерфейсов. Это-ж прям таки вотчина XML,

XSLT и иже с ними.



Это не так. XML это формат публикации, а XSLT инструмент для преобразования XML-документов. XSLT может использоваться для формирования представления XML-документов, но только если само существование XML-документов оправданно.

archimag ★★★
()
Ответ на: комментарий от archimag

только если само существование XML-документов оправданно

в области «построение web-интерфейсов», XML-документы не то чтобы оправданны/неоправданны - они просто там есть. Уже. Всегда. Тот же (x)html - вполне себе xml-документ, тщательно взболтанный дизайнерами :)

MKuznetsov ★★★★★
()
Ответ на: комментарий от archimag

> если само существование XML-документов оправданно

Да и HTML - это такой себе недоXML //Капитан Очевидность

Chaser_Andrey ★★★★★
() автор топика
Ответ на: комментарий от Chaser_Andrey

> Да и HTML - это такой себе недоXML

Близость HTML и XML чисто синтаксическая и связана с историческими причинами. Семантические различия однако весьма существенны, хотя на каком-то этапе W3C действительно пытался сделать упор на HTML, как на формат публикации, отсюда и родился XHTML, но XHTML2, который должен был быть развитием этих идей, фактически провалился, а HTML5, как развитие идей языка разметки - цветёт.

На сегодняшний день мы имеет ситуацию, когда всё богатство технологий, связанных c XML - совершенно не востребовано на серверной стороне. Следствием этого и является то, что попытка использования XSLT в качестве шаблонизатора только усложняет и загромождает решение, а реального профита нет никакого.

archimag ★★★
()
Ответ на: комментарий от MKuznetsov

xml/xslt тормозное сверхизбыточное говно, их в идеале не надо использовать вообще нигде.

slovazap ★★★★★
()
Ответ на: комментарий от archimag

а HTML5, как развитие идей языка разметки - цветёт

по этому поводу время покажет - пока-что видны только фэнские восторги, как у всякого «свежачка» :) Если взгянуть критично, то: html5 мало чего дал как инструмент представления данных и так-же мало как инструкция для рендера страниц. Мне кажется что он вообще как-то сориентирован на индексацию текста. То есть используя html5 всё остаётся прежним - нагруженные сервера занятые генерацией страниц, броузеры в основном заняты разбором этих страниц, и сами «лёгкие» страницы с минимумом логики.

Ситуация достаточно забавна - на стороне сервера, из некоторых внутренних данных приложения, которые в общем виде обычный DOM, мучительно строиться html объединяющий и данные и их представление. Так-же мучительно на стороне клиента строиться DOM и через JS разделяется работа в нём с данными и их видом.

При этом техническая возможность нормальной сбалансированной реализации web-приложений существует лет 5 если не 10. Но есть нюанс. Если приложения реально облачные или клиент-серверные и данные представляются как XML, то вся индустрия поисковых систем и индексации (заодно контекстной рекламы, SEO и проч.) остаётся в прошлом.

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

> При этом техническая возможность нормальной сбалансированной

реализации web-приложений существует лет 5 если не 10. Но есть нюанс


Да, я понял, опять во всём виноваты жидо-массоны.

archimag ★★★
()
Ответ на: комментарий от archimag

но это не соответствует предметной области шабланизаторов.

Согласен. Но кто сказал, что проблему формирования view нужно решать чем-то, что мы привыкли называть шаблонизаторами, а не трансформацией XML?

dizza ★★★★★
()
Ответ на: комментарий от archimag

а реального профита нет никакого.

Поверь мне, он есть. Только он познается на каком-то очень высоком уровне джедайства. Опытный верстальщик мне примерно минут за 30 на пальцах объяснил чем же xsl лучше обычного. Вкратце - повторное использование кода. Еще он ткнул на типичный антипаттерн: один здоровый такой template match внутри которого много select value-of с if-ками. В таком случае xslt просто громоздкий аналог обычного шаблонизатора и никакого профита действительно не будет.

Основная проблема XSLT, это то, что адекватно понять его могут только квалифицированные программисты, не то, что верстальщики. 95% верстальщиков используют xslt только в режиме описанного выше антипаттерна.

dizza ★★★★★
()
Ответ на: комментарий от dizza

> Поверь мне, он есть

Хм, поверь, у меня черный пояс по XSLT ещё с тех пор, когда я вообще никакого отношения к веб не имел. И потом я использовал XSLT два года для веб. Но в итоге я отрыл для себя Closure Templates и жизнь стала налаживаться.

Вкратце - повторное использование кода.


Closure Templates.

archimag ★★★
()
Ответ на: комментарий от archimag

И потом я использовал XSLT два года для веб.

Не показатель. Знаю разработчика, который прозрел года через 4 использования xslt :)

dizza ★★★★★
()
Ответ на: комментарий от archimag

При этом техническая возможность нормальной сбалансированной
реализации web-приложений существует лет 5 если не 10. Но есть нюанс

Да, я понял, опять во всём виноваты жидо-массоны.

нет, ты не понял :) это своеобразный технический dead-lock. Когда более прогрессивная технология (причём признанный тренд) оказывается в заведомо проигрышном положении.

Перенося очевидную клиентскую логику на клиента (включая и представление/отображение) и разгружая таким образом сервера, получаем в итоге приложение которое выпадает из мира web1/web2 - оно как минимум не индексируется и остаётся мало-известным.

MKuznetsov ★★★★★
()
Ответ на: комментарий от archimag

На сегодняшний день мы имеет ситуацию, когда всё богатство технологий, связанных c XML - совершенно не востребовано на серверной стороне.

Хм, поверь, у меня черный пояс по XSLT ещё с тех пор, когда я вообще никакого отношения к веб не имел.

хмм..чёрный пояс за медитации в Шао-Лине или всё-таки от «невостребованной серверной стороны» ?

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

Я написал на XSLT несколько десятков тысяч строк по совершенно разным задачам.

archimag ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.