gubin_niko
@gubin_niko

Есть ли смысл в шаблонизаторах в Yii2?

Добрый вечер, коллеги. Сейчас активно изучаю Yii2 и появляется много вопросов.

Вот например очередной: есть ли смысл использовать шаблонизатор (Twig или Smarty, или иной другой)?
Почему спрашиваю. Если использовать Smarty, то в макетах и видах уже не видно подсказок от IDE (что не самое важное), уже не видно смысла в наследовании, ибо главный макет меняется из контроллера.

Если кто-то из вас использует шаблонизатор, то подскажите, какие преимущества вам это даёт? Использовать хотелось бы в проекте, дабы изучить Smarty, но если в Yii2 намного удобнее и выгоднее использовать голый php, то придётся пока закрыть глаза на Smarty.
  • Вопрос задан
  • 1418 просмотров
Решения вопроса 1
qonand
@qonand
Software Engineer
Стоит или нет использовать шаблонизатор - зависит от Вашего проекта (на каком фреймворке Вы разрабатываете не важно). Если Вы делаете маленький проект (например сайт-визитку), разработкой и поддержкой которого будете заниматься Вы - тогда использовать шаблонизатор смысла не много. Если же Вы делаете более крупный проект, и не в одиночку а в команде тогда используя шаблонизатор, Вы получите ряд преимуществ, например:
1. Код становиться чище, за счет того что происходит четкое отделение представлени от всего остального, пропадает несуразная каша из php и html которая трудно поддается анализу.
2. Удобно распределять работу между участниками команды и ее стыковать - один разработчик спокойно делает всю бизнес-логику на php, другой разработчик (даже не знающий PHP) - делает представления. Я например, работал с множеством людей прекрасно верстающих но не знающих PHP, и разработка с помощью шаблонизаторов гораздо облегчает состыковку результатов их работы с проектом.
3. Исключаеться возможность говнокада в представлении, в представлении находиться только код логически относящийся к нему.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@karminski
Senior React.JS Developer
Скажем так, я их (преимущества использования шаблонизаторов в Yii 2) не нашёл. Может быть плохо искал.

EDITED:
Кто-то скажет, что шаблонизаторы удобны контент-менеджерам, поскольку они не "натворят делов" с сайтом. Однако, шаблонизаторы, так же как и нативный PHP, нужно изучить. Что проще - PHP или Twig? Может быть Twig, но не существенно. Что полезней - однозначно PHP, так как вы сможете не только контент выкладывать, но и учиться разработке сайтов, одновременно.

Кроме того, я предпочитаю увидеть на странице какой-нибудь Compile или Fatal error, нежели гадать, почему не весь контент отображается на странице (как правило, тот же Twig просто игнорирует, не отображает, ошибочный контент, а сообщение об ошибке надо искать где-то в логах).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы