phorror ([info]phorror) wrote,
@ 2006-02-07 18:33:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
Smarty
На мой взгляд - это самая грандиозная наёбка в мире пхп.
Отдельный язык со своим корявым хиторвыебаным синтаксисом, который надстраивается над пхп для того, чтобы в результате получить... тот же самый пхп!

Причём вполне понятно, как оно повилось.
Сначала это наверняка был обычный, вменяемый шаблонизатор.
А потом в него начали ДОБАВЛЯТЬ.

Самая феерия - это бэктикс.
Причём сами они, похоже, не понимают всего идиотизма.



(Read 78 comments) - (Post a new comment)


[info]phorror
2006-02-08 09:09 am UTC (link)
почему уверен?
что такого ужасного в этом?
а, главное, почему встраивать пхп - плохо, а смарти - наоборот, хорошо?

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 09:20 am UTC (link)
ничего ужасного нету.
админскую часть таким образом и пишу, вставкой пхп в хтмл код + внешний css))
и это логично.

#почему уверен?
потому что не первый день Вас читаю, но еще ни разу не увидел альтернативного решения. только гонения в сторону смарти.

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 09:25 am UTC (link)
Логично - это писать с использованием шаблонов любой раздел.
А то, что ты не использвешь смарти при этом, лишь доказывает, что смарти тебе НЕУДОБЕН =)

А что - я уже писал гонения? Вот склероз =)
Видимо, всякий раз, когда сталкиваюсь =)

собственно, сам смарти меня мало трогает.
Меня убивает нелогичность этой поделки. Какой смысл пользовать\ся ей, если есть пхп?

И ты не ответил на главный вопрос.

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 09:36 am UTC (link)
при написании админки мне:
не нужно
- кэширование
- разделение модели и отображения
плюс сталкивался с тем когда люди в админке в качестве шаблонного двигла использовали preg_replace, спасибо такого счастья не надо.

#Какой смысл пользовать\ся ей, если есть пхп?
может он позволяет реализовать трёх уровневую модель?
это я думаю и ответ на главный вопрос

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 09:40 am UTC (link)
Странно.
Почему не нужно разделение модели и отображения?
Чем админка принципиально отличается от корзинки?

про кэширование в смарти расскажи-ка поподробнее. что и как оно кэширует.

(оучнь удивлённо) а что - пхп не озволяет реализовать трёх уровневую модель?
Типа - слишком бедный язык? Не хватает возможностей?

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 09:55 am UTC (link)
#Чем админка принципиально отличается от корзинки?
принципиально ничем,за исключением того что в корзинке жизненного необходимо делать пхп код независимым от дизайна.пояснять это я думаю смысла нету.

кэширует результаты работы скрипта в виде пхп шаблонов)

#Типа - слишком бедный язык? Не хватает возможностей?
это мы уже обсуждали

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 10:07 am UTC (link)
есть. есть смысл пояснять.
мне оень интересно - почему в корзинке жизненного необходимо делать пхп код независимым от дизайна.

а я послушаю.
мне черезвычайно интересно.

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 10:17 am UTC (link)
частая смена дизайна, функциональных блоков.
лично мне проще написать хтмл и по втыкать в него зарезервированные переменные. дело вкуса и удобства,ИМХО.

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 10:20 am UTC (link)
вот мы и дошли до вранья
совршенно закономерный результат

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 10:30 am UTC (link)
я самообманом не занимаюсь

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 10:41 am UTC (link)
неправда.
ты занимаешься и самообманом, и меня пытаешься обмануть.
два раза

1. сначала ты написал, что "жизненного необходимо делать пхп код независимым от дизайна"
теперь ты пишешь "дело вкуса и удобства".
это, вообще-то, принципиально различные понятия.

2-е враньё.
ты тут долго рассказывал про логику view, про плагины, соглашался со мной про кошмар, и - вдруг! - по мановению волшебной палочки, всё это превратилось в девственно чистый html, с вкраплениями "арезервированных переменных"!

Чувак.
Ты занимаешься самообманом.
Твой "дизайн" похож на html, как я - на китайского императора.
У меня в php шаблонах в 10 раз меньше кода, чем у тебя в твоих "отделённых от кода шаблонах".

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 11:04 am UTC (link)
1: одно другое не взаимоисключает

2: в роли зарезервированной переменной может выступать не детцкая функция, то бишь плагин.
скажем календарь {сalendar [параметры]}
я понимаю что альтернативы:
calendar();
include 'calendar.php' одно и тоже.

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 11:10 am UTC (link)
1. я уже давно с подозревал, что с логикой у тебя нелады.
сейчас я в этом убедился =)
В общем, ты совершенно логичен в своей позиции.
пхп код отделять от "дизайна" - "жизненно необходимо"
А смарти-код - "дело вкуса" =)))

2. не надо мне рассказывать сказки про то, как выглядят шаблоны смарти.
Будет как в анекдте про Вовочку
- В Советском союзе - самые счастливые дети. У них много игрушек, мирное небо, заботливые родители, доброе государство...
Вовочка! Почему ты плачешь?
- Хочу в Советский Сою-ю-ю-юз!

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 11:15 am UTC (link)
ок. запостите у себя новую запись
в духе "и как же мир носит таких идиотов"
с ссылкой на этот спор, и лично на меня.
Это Ромик в Вашем стиле.

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 11:18 am UTC (link)
ты себе льстишь =)
ничего запредельного в твоём идиотизме нету.
это классические заблуждения от небольшого ума.
ничего такого, о чём стоило бы писать =)

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 11:21 am UTC (link)
Итоги спора:
смарти - это самая грандиозная наёбка в мире пхп. А Флинт, персонаж недолёкий и глупый.
Занавес, всё счастливы

(Reply to this) (Parent)(Thread)


[info]phorror
2006-02-08 11:25 am UTC (link)
Это не итоги, к сожалению.
А пустые слова.

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

(Reply to this) (Parent)(Thread)


[info]phlint
2006-02-08 11:56 am UTC (link)
яйца курицу не учат.
всё что будет дальше - будет жесточайщий флуд)

(Reply to this) (Parent)


[info]alex_executer
2006-05-26 12:46 pm UTC (link)
>Я бы с удовольствием поговорил с человеком, который действительно, с помощью логики и примеров может показать мне какие-то вещи, которых я, допустим, не понял.

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

Для отеделения шаблонов пользуюсь своим велосипедом - три функции, которые парсят указанный файл (возможно рекурсивно) и выводят переменную (если указан знак $) или вызывают функцию (если указан знак ?). Десяток строк, все просто и быстро.
Недавно появилась необходимость вывести таблицу, в которой некоторые строки могут быть пропущены в зависимости от некоторых условий:
#---cut------
Название товара
Вес $weight кг.
Цена $price денег
#---/cut-----
Если пустая переменная $weight - не выводить строчку.
Столкнулся с тем, что для реализации этой задачи приходится извращать логику работы приложений
или хранить каждую строку в отдельном шаблоне и собирать в PHP:
#---шаблон------



#---шаблон------
где ?weight? - вызов функции Parse_weight, которая проверяет значение переменной weight, если она указана - парсит файл, /design/weight.html, в котором написано
#---шаблон2-----
Вес кг.
#---шаблон2-----

Сказать, что это криво - ничего не сказать.
При построении 50 записей будет 50 раз прочитан и распарсен файл шаблон2, кроме того для каждой строки надо создавать новый файл, дикое усложнение условий.
В смарти все было бы на порядок проще:
#---smart----
Название товара
{if $weight}Вес {$weight} кг.{/if}
{if $weight}Цена $price денег{/if}
#---/smarty---

Примеры, логика есть. И я не верю в смарти, но иногда это удобно.

(Reply to this) (Parent)


[info]levgem
2006-02-08 03:44 pm UTC (link)
не, ну если тебе не нужно разделение модели и представления (уже не говоря об отсутствии контроллера), то тогда вообще все равно на чем писать.
cmd скрипта из винды будет вполне достаточно

(Reply to this) (Parent)


[info]hobobobo
2006-05-15 09:04 am UTC (link)
#Меня убивает нелогичность этой поделки. Какой смысл пользовать\ся ей, если есть пхп?
ал-я Какой смысл использовать php если есть asm ? :-)

(Reply to this) (Parent)(Thread)


(Anonymous)
2006-10-07 08:12 am UTC (link)
#Какой смысл использовать php если есть asm ? :-)
Ну, это вы перегибаете, уважаемый.
Согласен с автором темы. Попробовал я пару дней поработать со смарти, после чего пришел к выводу, что это весьма некчемный пакет, или как там его назвать.
PHP предназначен для писания динамических страниц, а значит смысл Smarty использовать псевдо-кеш утрачивает свою актуальность. Если у нас супер посещаемый форум, в котором посты идут каждую секунду, компиляция пхп кода становится дорогим удовольствием.

Это мое сугубо личное мнение, поэтому я прошу скинуть мне ссылочку на полноценную критику Smarty.

(Reply to this) (Parent)(Thread)


[info]hobobobo
2006-10-09 02:18 pm UTC (link)
Всему есть своя цена,
хочешь легко, без особых требований, для небольшой загрузки - юзай что хош.. хош Смарти, хош.. .NET пофиг.. фишка в том, что не на всех сатах есть такая большая загрузка - то здесь выигрывает простота.. и скорость разработки

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

и каждый волен решать что ему и в какой момент времени больше нужно.

(Reply to this) (Parent)


(Read 78 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…