> Что мешает в нем вшить, что ЩСАШФРЫШГШГМ, это "---"
наверное то же самое, что и в случае с > - неудобство ручной правки.
> При том, что программист не должен думать о том, что какой-то верстальщик вставил в его страницу модуль новостей,
должен. иначе верстальщик может много чего понавставлять...
есть три роли:
1. дизайнер. он определяет что, где и в каком виде должно находиться.
2. верстальщик. он пишет шаблоны, которые трансформируют выданные программистом данные в то, что хочет дизайнер.
3. программист. он обрабатывает запросы и формирует данные.
как происходит добавление новостного блока:
дизайнер приходит к программисту и говорит, что на главной странице он хочет видеть новости помеченные тэгом "бонусы", на остальных - все, которые не помечены тэгом "внутренние", а в админке - только "внутренние".
программист идёт и пишет класс TaggedNews, который наследуется от News. в админке при редактировании новости добавляет дополнительное поле. потом прописывает в контроллерах в нужных местах формирование нужных новостей. и вот теперь в дело вступает верстальщик, который должен привести новости к презентабельному виду. или не вступает и будет использован шаблон написанный для News.
и не надо про рафинированные условия, когда у нас есть модуль, модифицировать его не надо, контекстных зависимостей у него нет, а бедному верстальщику приходится править все шаблоны каждый раз, когда программисту потребуется создать новый класс или дизайнеру захочется добавить ещё каких-нибудь правил. при таком подходе получается либо дофига шаблонов (даже без учёта разных скинов ) либо в шаблонах содержится сложная и витиеватая логика.