Comments 47
А я так надеялся, что в этой-то версии от КУЧИ шаблонов избавятся.
Да и ORM не помешала бы. Active Record тот же, явно не был лишним.
Хуки, расширяемость — все это, конечно, хорошо, но вот монструозность все равно осталась. Или мне показалось?
Да и ORM не помешала бы. Active Record тот же, явно не был лишним.
Хуки, расширяемость — все это, конечно, хорошо, но вот монструозность все равно осталась. Или мне показалось?
А как избавиться от кучи шаблонов в проекте, где должно поддерживаться полное изменение стиля? :)
Думаю, ORM для такого проекта достаточно тяжеловесная надстройка, хотя было бы удобно. Сейчас модели довольно сильно друг от друга отличаются. Общего функционала мало.
Насчет монструозности — я бы не сказал, что проект производит такое впечатление. Хотя и легкой бабочкой его не назовешь :)
Думаю, ORM для такого проекта достаточно тяжеловесная надстройка, хотя было бы удобно. Сейчас модели довольно сильно друг от друга отличаются. Общего функционала мало.
Насчет монструозности — я бы не сказал, что проект производит такое впечатление. Хотя и легкой бабочкой его не назовешь :)
Ммм… может, я вас неправильно понял.
Для себя я вижу удобной систему шаблонов модульную.
То есть, как в случае с Yii, например.
Есть основной layout, есть элементы layout'а — header, footer, aside, etc
Лэйаут разбивается на модули и модули содержатся в нужной папке.
Плюс шаблон каждого контроллера лежит в соответствующей папке (относительно имени контроллера), так же имеется возможность указать и другой шаблон — достаточно указать соответствующий путь.
Думаю, основная идея понятна? Или в XF сейчас именно так?
Для себя я вижу удобной систему шаблонов модульную.
То есть, как в случае с Yii, например.
Есть основной layout, есть элементы layout'а — header, footer, aside, etc
Лэйаут разбивается на модули и модули содержатся в нужной папке.
Плюс шаблон каждого контроллера лежит в соответствующей папке (относительно имени контроллера), так же имеется возможность указать и другой шаблон — достаточно указать соответствующий путь.
Думаю, основная идея понятна? Или в XF сейчас именно так?
Да, там примерно так же. Но не совсем. Вот основной шаблон и его основные части, в который вставляются остальные. Все остальные шаблоны вставляются в него и не имеют, конечно, HTML заголовка и прочего.


Ах, ну да. У них же еще шаблонизатор… А отказаться от него можно?
Ну не люблю я шаблонизаторы. php-native куда лучше)
Ну не люблю я шаблонизаторы. php-native куда лучше)
Нет, конечно. Мало ли, что вы не любите :) Политика фирмы :))
Вот из-за таких мелочей и политики фирмы… как бы не пришлось самому велосипед писать :\
А можете показать скриншоты админки? В обзоре их не хватает)
А можете показать скриншоты админки? В обзоре их не хватает)
Очень боюсь ХабраЭффекта :) Хостер меня убьет. :)
www.fractalizer.ru/frpost_554/xenforo-1-0-beta-admin-control-panel-in-pictures/
www.fractalizer.ru/frpost_554/xenforo-1-0-beta-admin-control-panel-in-pictures/
Как только закончим русскую локализацию на www.xf-russia.ru, сделаю такой же на Хабре, только с русским везде.
Ах, ну да. BB-code еще жив )) спасибо, теперь я, пожалуй, не буду сомневаться в вопросе «стоит ли его использовать» :)
html-теги можно так же обрабатывать, как и bb-code, если потребуется.
Вот только html можно выводить без распарсивания (то есть, без дополнительных затрат).
Конечно, результат парсинга bb-кода можно кешировать, но, имхо, лучше попросту убрать лишний элемент в цепи сервер->клиент.
Вот только html можно выводить без распарсивания (то есть, без дополнительных затрат).
Конечно, результат парсинга bb-кода можно кешировать, но, имхо, лучше попросту убрать лишний элемент в цепи сервер->клиент.
html-теги — это самая хуевая разметка на форуме, которая только может быть!
Хабр тому пример. Заебался.
Хабр тому пример. Заебался.
Согласен, но, imho, BBCode ничуть не лучше. Самое оно — Markdown.
P.S. Ну и 21й век вовсю идет. Давно пора уже всем браузерам иметь встроенные редакторы для textarea с минимальным форматированием.
P.S. Ну и 21й век вовсю идет. Давно пора уже всем браузерам иметь встроенные редакторы для textarea с минимальным форматированием.
я у себя использую Маркдаун. Но что угодно хорошо, абы html. Потому что если я хочу написать, что «тег делает текст жирным...» я часто ошибаюсь и пишу именно так, вместо того чтобы написать «тег <b> делает текст жирным...». И каждый раз я должен набирать все эти <, >. А если пользователь захочет скопировать цитату с баша, то мне ему придется объяснять все эти нюансы с экранированием? Даже в ББ все намного проще. Кроме Маркдауна еще Вики-разметка есть вменяемая
<Lightbit> Кстати, нашим массовикам-затейникам на потоке дали задание — нарисовать плакат. Уж не знаю, к чему и зачем.
<Lightbit> Теперь на профстене висит плакат с большой надписью «ПЛАКАТ», и в уголке человечек в плаще с буквами К. О. на груди, и внизу под ним подписано «информ».
Во-во! Экранирование — это отдельная жесть (все эти lt-gt), не говоря уже про то, что теги вводить крайне неудобно, и например, бывает, что случайно забывается закрывающая скобка (тогда вообще вся разметка летит к такой то матери), или слэш в закрывающем теге.
Маркдаун прекрасен тем, что ты когда пишешь, не отвлекаешься на форматирование вообще (даже чтобы выбрать слово, дабы обозначить его жирным), и это мега-удобно.
Маркдаун прекрасен тем, что ты когда пишешь, не отвлекаешься на форматирование вообще (даже чтобы выбрать слово, дабы обозначить его жирным), и это мега-удобно.
А шаблоны только через админку можно редактировать? или через файлы тоже?
Только через админку. Дополнения могут добавлять шаблоны в систему через свой XML.
Жалко. Для обычных пользователей это еще может быть полезно (но они все равно не знают ни HTML ни синтаксис шаблонов), а вот для разработчиков — только мешает (не верю что кому может быть удобно редактировать шаблоны без подсветки синтаксиса, в неудобной textarea, без нормального поиска и т.д. и т.п.).
Оптимальный вариант — возможность редактирования и там и там. Надеюсь когда нибудь это появится…
Оптимальный вариант — возможность редактирования и там и там. Надеюсь когда нибудь это появится…
Ну, вообще-то нормальные разработчики проектируют шаблон в HTML редакторе / блокноте / чем-угодно, а потом полный код вставляют в админке.
Ну с подсветку синтаксиса можно сделать с помощью CodeMirror. Но вообще да. Предпочитаю такие форумы редактировать в нетбинсе и закачивать изменения через систему контроля версий. В крайнем случае и откатиться можно.
По моему пора заводить отдельный блог XenForo :)
Приношу свои извинения за случайное засовывание топика в черновики. Кнопки попутал. Вернул на место только что.
Как-то странно, в эпоху Open Source, Open Hardware покупать $$$ программный продукт с типичной функциональностью… Принято, чтоб продукт был в 2-х версия: Community Free version & Pro Commercial version.
Да по ходу это просто альтернатива VB. Те, кто открывают новый форум, вряд ли решатся на эксперимент с ХепГого.
Импорт и миграция только с vB есть. Даже с рнрВВ предлагают сначала переехать на vB, а потом на еще раз мигрировать на ХепГого.
Я так понял там просто обидевшиеся разработчики продали vB, а потом создали конкурирующий продукт.
Импорт и миграция только с vB есть. Даже с рнрВВ предлагают сначала переехать на vB, а потом на еще раз мигрировать на ХепГого.
Я так понял там просто обидевшиеся разработчики продали vB, а потом создали конкурирующий продукт.
По сравнению с vb3, xenforo выглядит очень утонченным и элегантым.
Отличный обзор. Спасибо.
Отличный обзор. Спасибо.
Модульных тестов (ну и интеграционных), как я понял, нет?
Полностью согласен. Лучше бы про «Ваниллу» с такой тщательностью рассказали.
Хорошая идея. Будет время — попробую, хоть мне и не нравится этот движок. На первый взгляд все там красиво тоже.
Размер основной части кода XenForo 3,24 МБ (3 405 312 байт). Еще 8,31 МБ (8 724 429 байт) занимает Zend Framework, который поставляется вместе с кодом XenForo.
Из ZF используется совсем немного классов. В их числе Zend_Registry (в качестве реестра для синглтон-подобных объектов вроде экземпляра XenForo_Db), Zend_Config, Zend_Cache (много чего кеширует, в частности используется в базовом классе моделей XenForo_Model), Zend_Service_ReCaptcha, Zend_Http_Client, Zend_Mail, Zend_Validate и некоторые другие.Вы не видите противоречия?
Конструктор запросов не используется, они встроены прямо в код, как обычно (что, конечно, несколько затруднит поддержку нескольких баз данных. Но с другой стороны, запросы сконцентрированы внутри модели, так что...)Буря эмоций… Как обычно где? У быдлокодеров? Как в vB? Да даже в IPB давно используется конструктор запросов.
Что-то не заметно того великолепного кода, о котором так громко говорили. Разве что админка радует.
Давно уже приглядываюсь к xenForo (сейчас веду форум на IPB, устал), но в тонкости реализации не погружался. Спасибо за статью, очень интересно!
Как и во всех современных форумах в XenForo есть КУЧА шаблонов. Синтаксис довольно мощный (см. отрывки внизу), впрочем, этим уже никого не удивишь. Спецтеги пишутся как в PHPTAL («неймспейсированный» XML/HTML).
Вот почему практически в каждом крупном проекте разработчиков торкает изобретать собственный супер-пупер-шаблонизатор-интерпретатор. XSLT для чего существует?
Никогда не понимал в чём кайф иметь header и footer отдельными «шаблонами», и ещё несколько десятков для всякой мелочи. Чихали видимо все на валидную разметку и удобство кастомизации.
Супер-пупер шаблонизаторы, header и footer отдельно — это всё неудобно, согласен. Но проблема в том, что удобство XSLT тоже весьма сомнительны. Особенно для обычных пользователей, а не опытных разработчиков.
3 Мб + 8 Мб Zend? Уверен, это может означать только одно: система ужасно перегружена и сами разработчики не всегда скажут точно, что происходит в тот или иной момент. Млять, это чего обкуриться надо, чтобы раздуть форумный движок до таких объёмов?
Просто для информации. Объем PHPBB — 8 371 281 байт. Объем Vanilla Forums — 5 054 321 байт. Объем SimpleMachines 5 031 948 байт. Объем VB4 20 781 633 байт. Объем VB3 13 143 813 байт. Похоже, что все системы ужасно перегружены и разработчики этих систем вообще ничего в них не понимают :)
Zend в комплект XF включен целиком, хотя, конечно, используется едва ли 5% из него.
Zend в комплект XF включен целиком, хотя, конечно, используется едва ли 5% из него.
Sign up to leave a comment.
XenForo: Краткий обзор архитектуры форума для программистов