The employer
Новичок
Насмешил? Ну-ну.Автор оригинала: *****
Ахахахахаха! Насмешил.
Попал, как говорится, пальцем в небо.
Внимание
Статус проекта — полуэкспериментальный, но я считаю текущую версию вполне работоспособной. В силу параноидального отношения к качеству проекта, 100%-я стабильность и обратная совместимость до версии 1.0 не гарантируется.
Ясно, спасибо.так.
хслт, смарти пхп - ваш выбор в этом случае.
-~{}~ 02.08.09 19:33:
Идеологические?Автор оригинала: fixxxer
Проблемы со смарти скорее идеологические, чем технологические.
Как всю жизнь показывает практика, PHP (вместе со своими шаблонами и прочим) никогда не является узким местом. Всегда проблемы начинаются с базы.Если не пихать в шаблон все подряд, превращая его в кашу, то смарти вполге пригоден к использованию. Конечно код он генерит далекий от идеального, но если не мега высоконагруженный проект, вряд ли это самое узкое местоАкселератор, конечно, обязателен.
Оно, в принципе, и понятно - веб-приложение отлично параллелится, потому что у каждого экземпляра нет ничего общего, все общие данные лежат в memcached (что тормозит редко) и в базе (а вот тут ужее все хуже). Так что при возникновении проблем именно с PHP (а не с чем-нибудь еще) просто добавляется еще один сервер, и все. Лишь бы архитектура приложения не препятствовала, но это уже руки.sys.
Если подходить к вопросу серьезно, то дело не в наборе конструкций. Дело в возможности расширения языка шаблонов, во включении в этот язык операторов, специфичных для данного приложения или данной предметной области. В ruby on rails, к примеру, нечто подобное называют хелперами.С другой стороны, если ограничиваться небольшим набором конструкций - if, foreach - то не вижу никаких проблем в использовании и plain php-шаблонов. Примерно то же самое и получается.
Например, есть задача написать приложение, где часто нужно иметь дело с иерархическими выпадающими списками. В smarty можно сделать plugin, инкапсулирующий в себе всю логику поведения и отображения этих списков.
Если говорить обо мне, то для меня главное требование состоит в том, чтобы иметь возможность разделить задачу реакции на запрос отображения какого-либо объекта на две.А вообще, для начала надо определиться с требованиями к template engine - при наличии точного списка требований (а это зависит от ситуации) выбор обычно становится очевиден.
Первая часть должна решать вопросы проверки входных параметров запроса, проверку прав доступа, извлечение объекта из хранилища, etc.
Вторая часть должна быть полностью посвящена вопросам отображения объекта в принятом языке - будь то common xml, xhtml, json или вообще некий специфичный протокол типа IFX.
Этот подход можно реализовать с использованием чистого PHP, можно с использованием blitz. Но smarty заточен на это прямо "из коробки".
Акселератор, конечно, обязателен.