fisher
накатила суть
blitz templates - теперь на sf.net
Поскольку сегодня нас проапрувили на sourceforge (http://sourceforge.net/projects/blitz-templates/), я хотел бы сделать первый официальный анонс проекту. До сегодняшнего времени вы, возможно, слышали о blitz templates вскользь в нескольких тредах пхп-клуба, ну и может быть в моем живом журнале - и всё, так что здесь я впервые вкратце попробую рассказать, что это такое и нафига оно нужно. Писать официальные анонсы у меня нет никакого желания, так что простите мне вольности изложения.
Blitz templates изначально задумывался как альтернатива php_templates(http://sourceforge.net/projects/php-templates/). И автор (Максим Полтарак, он же su1d), и многие поклонники этого движка активно тусовались здесь на форуме несколько лет назад, находили баги, предлагали идеи, патчили, писали документацию и так далее. Однако уже несколько лет разработка этого проекта заморожена. Сейчас с выходом новых версий PHP вносятся изменения в код, если он вдруг не собирается, но не более. Несмотря на то, что проект не развивается, php_templates сослужил очень хорошую службу многим девелоперам, проекты росли, росла нагрузка, а это был и остается фактически единственный движок, который можно было спокойно использовать на чуть ли не в любых условиях, особенно не боясь нагрузок. С другой стороны, не всем нравилась аскетичность php_templates, отсутствие объектного API, отсутствие каких-то фич, которым привыкли php-девелоперы, и многие от него стали отказываться в пользу native PHP.
Выбрать native PHP в качестве шаблонного двигла во многих современных проектах означает, что многие сложные шаблоны превратятся в такое спагетти, что разобраться в этом переплетении HTML и PHP будет крайне сложно, а это существенно затруднит поддержку кода. При этом почти все, кто слезал на другие движки, рано или поздно на большой нагрузке понимали, что альтернативе PHP по сути нет. Единственная более менее рабочая стратегия - это компилированные шаблоны типа Смарти, но эта тема достаточно флеймообразующая, чтобы затрагивать её сейчас, так что ограничусь здесь лишь замечанием, что вроде бы всё выглядит сносно, нативный код, но на по-настоящему больших нагрузках смарти по мнению большого числа девелоперов всё равно живет плохо.
В-общем, года полтора назад я решил реанимировать направление php_templates, которое архитектурно мне казалось наиболее правильным - php-модуль, который написан на Си, с внешним API, и шаблонами, где в приниципе невозможно намешать код с HTML так, что увечья детородным органам автору сего безобразия будет самым мягким наказанием, которое придет в голову, если вам придется поддерживать такой код.
Модель, к которой мы пришли в результате экспериментов, основывается на двух частях - view контроллеры (PHP) и шаблоны с минимальной логикой (HTML+). Фактически весь функционал php_templates, плюс "слабая" логика в шаблонах (if, include), и "динамические методы шаблона", суть которых заключается в том, что создавая собственные контроллеры со своими методами разработчик может пользоваться этими методами в тексте шаблона (или отдавать верстальщику API контроллера). В-общем всё вместе получилась довольно замороченная объектная кухня, но на мой взгляд достаточно удобная, масштабируемая, не говоря о том, что работает это очень быстро (бенчмарки в документации). Если интересно посмотреть примеры - сюда, пожалуйста (http://alexeyrybak.com/blitz/blitz_ru.html). Основной упор сделан на то, что в будущем мы столнемся с интернет-приложениями совершенно нового типа - это будут просто полноценные приложения, по сложности интерфейсов они вряд ли будут отличаться от современных десктопных. И view-часть этих приложений это уже никак не простейшие кусочки с циклами и echo, которые ты делаешь на автомате пиша пхп-скрипты, а всё в месте это действительно довольно громоздкий код сам по себе, в котором должен быть порядок.
Примерно с лета прошлого года у нас появились первые пользователи-тестеры, которым огромное спасибо, и где-то в октябре-ноябре я окончательно доделал основные фичи и пофиксил большинство критичных багов. Мы занялись документацией (за что отдельное спасибо Владимиру Кривошееву он же Develar), сделали документацию на английском, и вот сейчас наконец я хочу официально объявить об открытии этого проекта, и призвать к активному участию всех заинтересовавшихся.
Blitz сейчас стабилен, но отсутствие большого числа внедрений не позволяет мне назвать его не-бетой
Он живёт на нескольких проектах, планов по развитию в-общем немало, но мне бы хотелось сейчас в первую очередь получить максимум отзывов, чтобы понять, в какую сторону развивать проект. Вот, собственно и всё. Было бы интересно услышать ваше мнение.
Поскольку сегодня нас проапрувили на sourceforge (http://sourceforge.net/projects/blitz-templates/), я хотел бы сделать первый официальный анонс проекту. До сегодняшнего времени вы, возможно, слышали о blitz templates вскользь в нескольких тредах пхп-клуба, ну и может быть в моем живом журнале - и всё, так что здесь я впервые вкратце попробую рассказать, что это такое и нафига оно нужно. Писать официальные анонсы у меня нет никакого желания, так что простите мне вольности изложения.
Blitz templates изначально задумывался как альтернатива php_templates(http://sourceforge.net/projects/php-templates/). И автор (Максим Полтарак, он же su1d), и многие поклонники этого движка активно тусовались здесь на форуме несколько лет назад, находили баги, предлагали идеи, патчили, писали документацию и так далее. Однако уже несколько лет разработка этого проекта заморожена. Сейчас с выходом новых версий PHP вносятся изменения в код, если он вдруг не собирается, но не более. Несмотря на то, что проект не развивается, php_templates сослужил очень хорошую службу многим девелоперам, проекты росли, росла нагрузка, а это был и остается фактически единственный движок, который можно было спокойно использовать на чуть ли не в любых условиях, особенно не боясь нагрузок. С другой стороны, не всем нравилась аскетичность php_templates, отсутствие объектного API, отсутствие каких-то фич, которым привыкли php-девелоперы, и многие от него стали отказываться в пользу native PHP.
Выбрать native PHP в качестве шаблонного двигла во многих современных проектах означает, что многие сложные шаблоны превратятся в такое спагетти, что разобраться в этом переплетении HTML и PHP будет крайне сложно, а это существенно затруднит поддержку кода. При этом почти все, кто слезал на другие движки, рано или поздно на большой нагрузке понимали, что альтернативе PHP по сути нет. Единственная более менее рабочая стратегия - это компилированные шаблоны типа Смарти, но эта тема достаточно флеймообразующая, чтобы затрагивать её сейчас, так что ограничусь здесь лишь замечанием, что вроде бы всё выглядит сносно, нативный код, но на по-настоящему больших нагрузках смарти по мнению большого числа девелоперов всё равно живет плохо.
В-общем, года полтора назад я решил реанимировать направление php_templates, которое архитектурно мне казалось наиболее правильным - php-модуль, который написан на Си, с внешним API, и шаблонами, где в приниципе невозможно намешать код с HTML так, что увечья детородным органам автору сего безобразия будет самым мягким наказанием, которое придет в голову, если вам придется поддерживать такой код.
Модель, к которой мы пришли в результате экспериментов, основывается на двух частях - view контроллеры (PHP) и шаблоны с минимальной логикой (HTML+). Фактически весь функционал php_templates, плюс "слабая" логика в шаблонах (if, include), и "динамические методы шаблона", суть которых заключается в том, что создавая собственные контроллеры со своими методами разработчик может пользоваться этими методами в тексте шаблона (или отдавать верстальщику API контроллера). В-общем всё вместе получилась довольно замороченная объектная кухня, но на мой взгляд достаточно удобная, масштабируемая, не говоря о том, что работает это очень быстро (бенчмарки в документации). Если интересно посмотреть примеры - сюда, пожалуйста (http://alexeyrybak.com/blitz/blitz_ru.html). Основной упор сделан на то, что в будущем мы столнемся с интернет-приложениями совершенно нового типа - это будут просто полноценные приложения, по сложности интерфейсов они вряд ли будут отличаться от современных десктопных. И view-часть этих приложений это уже никак не простейшие кусочки с циклами и echo, которые ты делаешь на автомате пиша пхп-скрипты, а всё в месте это действительно довольно громоздкий код сам по себе, в котором должен быть порядок.
Примерно с лета прошлого года у нас появились первые пользователи-тестеры, которым огромное спасибо, и где-то в октябре-ноябре я окончательно доделал основные фичи и пофиксил большинство критичных багов. Мы занялись документацией (за что отдельное спасибо Владимиру Кривошееву он же Develar), сделали документацию на английском, и вот сейчас наконец я хочу официально объявить об открытии этого проекта, и призвать к активному участию всех заинтересовавшихся.
Blitz сейчас стабилен, но отсутствие большого числа внедрений не позволяет мне назвать его не-бетой
