К плохим практикам в Smarty, о которых я написал относятся:
- include одного шаблона в другой шаблон, если этот другой нигде больше не используется;
- include шаблона самого в себя (для вывода дерева);
- создание глобального объекта Smarty, в который в разных скриптах добавляются переменные так, что в итоге не понятно, что и где добавилось и что и где можно удалить.
Что касается практик хороших, то тут все более субъективно. Мое мнение, что если периодичность правок системы соизмерима со временем жизни системы, стоимость правок и стоимость введения нового человека в команду несоизмеримо меньше стоимости написания системы с нуля, то скорее всего мы имеем дело с хорошими практиками :)
Мне кажется, что вопрос выбора того или иного шаблонизатора сильно зависит от конкретных условий разработки конкретного проекта.
По опыту могу сказать, что Smarty, особенно в руках начинающих, очень часто приводит к использованию плохих практик. Хотя, скорее всего, плох не факт использования какого-то конкретного шаблонизатора, а факт его неправильного использования.
$vheight = $oheight = $ma['height'];
$vwidth = $owidth = $ma['width'];
if (myarray[«Строка поиска»]) {… }
выполнится еще быстрее, чем
if («Строка поиска» in myarray) {… }
var undefined = 2;
или того хуже
undefined = 2;
то все станет плохо
- include одного шаблона в другой шаблон, если этот другой нигде больше не используется;
- include шаблона самого в себя (для вывода дерева);
- создание глобального объекта Smarty, в который в разных скриптах добавляются переменные так, что в итоге не понятно, что и где добавилось и что и где можно удалить.
Что касается практик хороших, то тут все более субъективно. Мое мнение, что если периодичность правок системы соизмерима со временем жизни системы, стоимость правок и стоимость введения нового человека в команду несоизмеримо меньше стоимости написания системы с нуля, то скорее всего мы имеем дело с хорошими практиками :)
По опыту могу сказать, что Smarty, особенно в руках начинающих, очень часто приводит к использованию плохих практик. Хотя, скорее всего, плох не факт использования какого-то конкретного шаблонизатора, а факт его неправильного использования.