Login
Использовать Smarty или нет???
175
30.12.05 16:17
Всем привет!
Ребята, нужен ваш совет, пишу CMS, нужен будет парсер, который будет читать мои шаблоны, и заменять вставки типа {Title}, на значения которые высосал из базы, думал написать свой класс, который будет это выполнять, но потом посоветовали ознакомится со Smarty, т.к. говорят что уж очень удобный шаблонизатор.
Хочу узнать ваше мнение, может это я заблуждаюсь? Но прежде всего разскажу, какое у меня впечатление сложилось о Smarty, почитал, посмотрел, единственное что мне в нем понравилось, это то, что он кеширует шаблоны, очень полезно для больших информационных поралов. А остальное - от чего ушли, к тому опять возвращаемся, зачем так абстрагироваться от PHP, заворачивать все его фукции в Смартовые обертки, кому это нужно? Изначально, идея была такова: разграничить логику от представления, так, чтобы код PHP был в одной стороне, а HTML в другой, чтобы верстальщик, PHP код даже и в глаза не видел. Считалось перемешка PHP с HTML дурным тоном, а сейчас что творят? Тоже самое, только вместо PHP кода Смартовый, получается двойное транслирование, чтобы достич результата.
Конечно это только мо╦ мнение, я против активных, только за пасивные шаблоны, просто чтобы каждый занимался своим делом, а то получается что из HTML кодеров хотят сделать программистов, чтобы те переносили логику в шаблоны.
У кого какие мысли?
Ребята, нужен ваш совет, пишу CMS, нужен будет парсер, который будет читать мои шаблоны, и заменять вставки типа {Title}, на значения которые высосал из базы, думал написать свой класс, который будет это выполнять, но потом посоветовали ознакомится со Smarty, т.к. говорят что уж очень удобный шаблонизатор.
Хочу узнать ваше мнение, может это я заблуждаюсь? Но прежде всего разскажу, какое у меня впечатление сложилось о Smarty, почитал, посмотрел, единственное что мне в нем понравилось, это то, что он кеширует шаблоны, очень полезно для больших информационных поралов. А остальное - от чего ушли, к тому опять возвращаемся, зачем так абстрагироваться от PHP, заворачивать все его фукции в Смартовые обертки, кому это нужно? Изначально, идея была такова: разграничить логику от представления, так, чтобы код PHP был в одной стороне, а HTML в другой, чтобы верстальщик, PHP код даже и в глаза не видел. Считалось перемешка PHP с HTML дурным тоном, а сейчас что творят? Тоже самое, только вместо PHP кода Смартовый, получается двойное транслирование, чтобы достич результата.
Конечно это только мо╦ мнение, я против активных, только за пасивные шаблоны, просто чтобы каждый занимался своим делом, а то получается что из HTML кодеров хотят сделать программистов, чтобы те переносили логику в шаблоны.
У кого какие мысли?
NEW 30.12.05 23:56
in Antwort Simple2005 30.12.05 16:17
Считалось перемешка PHP с HTML дурным тоном, а сейчас что творят?
-----
Оно и сейчас так же считается. И от того, на чем сделан активный код - ничего не зависит.
А есть вообще жуткие требования - на стороне сервера можно
1. создать объект
2. присвоить первичный ключ
3. использовать итератор foreach
4. использовать одноточечную нотацию.
Все. За любой другой код - растрел, каждый день...
Зато сопровождать код - никаких проблем.
-----
Оно и сейчас так же считается. И от того, на чем сделан активный код - ничего не зависит.
А есть вообще жуткие требования - на стороне сервера можно
1. создать объект
2. присвоить первичный ключ
3. использовать итератор foreach
4. использовать одноточечную нотацию.
Все. За любой другой код - растрел, каждый день...
Зато сопровождать код - никаких проблем.

NEW 31.12.05 12:59
in Antwort Murr 30.12.05 23:56
> 4. использовать одноточечную нотацию.
Что это такое?
Что это такое?
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.12.05 13:49
in Antwort Murr 30.12.05 23:56
Первый раз слышу об этих требования, требования к форматированию кода слышал, и их соблюдаю, ну а на стороне сервера, можно, и нужно использовать любые конструкции, все возможности языка, чтоб достич желаемого результата, на то PHP и развивается, чтоб люди его использовали, главное чтобы код был читабельным, с комментариями, и был отформатирован согласно рекомендаций PEAR.
NEW 31.12.05 15:40
in Antwort voxel3d 31.12.05 12:59
Можно ссылаться ТОЛЬКО на свойства объекта. На свойства подобъектов - уже нельзя, даже если они доступны.
TMyObject o = new TMyObject(,0);
o.Size = new TSize(24,80,0); // это нормально
o.Size.X = 24; // это - запрещено - вторая точка.
o.Size.Y =80;
TMyObject o = new TMyObject(,0);
o.Size = new TSize(24,80,0); // это нормально
o.Size.X = 24; // это - запрещено - вторая точка.
o.Size.Y =80;
NEW 31.12.05 15:55
in Antwort Simple2005 31.12.05 13:49
Видишь ли, когда за день производится порядка 50К работающего кода и его надо сопровождать и все - силами нескольких человек, то любые рекомендации несколько не соответствуют ситуации... Анализ же говорит, что код соответствующий указанным выше требованиям сопровождается легче.
Поковыряйся в .NET - там как раз подтверждается эта тенденция - активный код отделен от HTML-шаблона, но не до конца - местами надо делать ToString() по месту, но это только ухудшает код...
P.S. На мелкософт с его рекомендациями по использованию венгерской нотации я не кивал...
Поковыряйся в .NET - там как раз подтверждается эта тенденция - активный код отделен от HTML-шаблона, но не до конца - местами надо делать ToString() по месту, но это только ухудшает код...
P.S. На мелкософт с его рекомендациями по использованию венгерской нотации я не кивал...

NEW 31.12.05 19:25
in Antwort Murr 31.12.05 15:55
Есть правда в твоих словах, с одной стороны достаточно удобно когда можешь добираться одним объектом до свойств другого, а с другой, в больших приложениях, трудно будет разбираться, тем более если не ты писал.
Ну если уж .NET не приветствует активные шаблоны, зачем тогда придумали Smarty? и кстати популярность его растет, среди HTML кодеров, пусть пользуются, если им так нравится, а я не хочу.
Ладно, сегодня наверно писать уже не буду, всех с Новым Годом !!!

Ну если уж .NET не приветствует активные шаблоны, зачем тогда придумали Smarty? и кстати популярность его растет, среди HTML кодеров, пусть пользуются, если им так нравится, а я не хочу.
Ладно, сегодня наверно писать уже не буду, всех с Новым Годом !!!


NEW 31.12.05 20:19
in Antwort Simple2005 31.12.05 19:25
Увы, про Smarty я не в курсе. То, что изложено выше - изложено с самых общих позиций, пригодных для любых систем.
Что до HTML-кодеров, то, по моему мнению, ни у одного из них нет возможностей стать программистом. По крайней мере лет пять учиться... но и тогда окажется, что это либо уже программист, либо все еще кодер...
С Новым Годом!!! и поменьше ненайденых багов...

Что до HTML-кодеров, то, по моему мнению, ни у одного из них нет возможностей стать программистом. По крайней мере лет пять учиться... но и тогда окажется, что это либо уже программист, либо все еще кодер...

С Новым Годом!!! и поменьше ненайденых багов...

NEW 01.01.06 01:39
in Antwort Simple2005 30.12.05 16:17
NEW 01.01.06 17:20
in Antwort Simple2005 30.12.05 16:17
конечно бери smarty, довольно хороший и простой парсер, мишать php и html код, это не красиво. а кеширование помоему можно отключить. $this->caching = false;
NEW 01.01.06 19:31
in Antwort as400 01.01.06 17:20
Валидол в тему ссылку скинул, вполне согласен с мнением, что "smarty -- пустая эмуляция PHP", скорее всего, что буду писать свой шаблонизатор, с необходимым мне фукционалом, потомучто универсальность - противовес производительности, кстати кэширование мне нужно будет, но его не трудно реализовать.
NEW 01.01.06 22:26
in Antwort Simple2005 01.01.06 19:31, Zuletzt geändert 01.01.06 22:28 (as400)
лично я рекомендую smarty, зачем что то своё изобретать если это уже существует ?? тогда можно и PEAR из кода выкинуть, так как это всё тормозит программы на 50-60 %. темболее если smarty не понравится, то можно всё быстро переделать, в конце концов ты передаёшь этим шаблонисаторам только arrays.
NEW 02.01.06 15:47
in Antwort as400 01.01.06 22:26
в конце концов ты передаёшь этим шаблонисаторам только arrays.
------
Это как раз неправильно. Передавться должен проблемно-ориентированный объект, полностью скрывающий реализацию. Какая разница, с точки зрения генерации документа, что там есть - array, dataset или вообще отдельный запрос каждого поля, если все, что требуется, - подставить строки по месту?
------
Это как раз неправильно. Передавться должен проблемно-ориентированный объект, полностью скрывающий реализацию. Какая разница, с точки зрения генерации документа, что там есть - array, dataset или вообще отдельный запрос каждого поля, если все, что требуется, - подставить строки по месту?
NEW 03.01.06 08:42
in Antwort Murr 02.01.06 15:47
Правильно! Вот объект, как раз то и будет у меня передаваться в шаблон, и вызывать нужный метод,
например: $obj->Draw(,0);
например: $obj->Draw(,0);