Pull to refresh

Comments 47

А я так надеялся, что в этой-то версии от КУЧИ шаблонов избавятся.
Да и ORM не помешала бы. Active Record тот же, явно не был лишним.

Хуки, расширяемость — все это, конечно, хорошо, но вот монструозность все равно осталась. Или мне показалось?
А как избавиться от кучи шаблонов в проекте, где должно поддерживаться полное изменение стиля? :)
Думаю, ORM для такого проекта достаточно тяжеловесная надстройка, хотя было бы удобно. Сейчас модели довольно сильно друг от друга отличаются. Общего функционала мало.

Насчет монструозности — я бы не сказал, что проект производит такое впечатление. Хотя и легкой бабочкой его не назовешь :)
Ммм… может, я вас неправильно понял.
Для себя я вижу удобной систему шаблонов модульную.
То есть, как в случае с Yii, например.
Есть основной layout, есть элементы layout'а — header, footer, aside, etc
Лэйаут разбивается на модули и модули содержатся в нужной папке.
Плюс шаблон каждого контроллера лежит в соответствующей папке (относительно имени контроллера), так же имеется возможность указать и другой шаблон — достаточно указать соответствующий путь.
Думаю, основная идея понятна? Или в XF сейчас именно так?
Да, там примерно так же. Но не совсем. Вот основной шаблон и его основные части, в который вставляются остальные. Все остальные шаблоны вставляются в него и не имеют, конечно, HTML заголовка и прочего.

Ах, ну да. У них же еще шаблонизатор… А отказаться от него можно?
Ну не люблю я шаблонизаторы. php-native куда лучше)
Нет, конечно. Мало ли, что вы не любите :) Политика фирмы :))
Вот из-за таких мелочей и политики фирмы… как бы не пришлось самому велосипед писать :\
А можете показать скриншоты админки? В обзоре их не хватает)
Как только закончим русскую локализацию на www.xf-russia.ru, сделаю такой же на Хабре, только с русским везде.
Ах, ну да. BB-code еще жив )) спасибо, теперь я, пожалуй, не буду сомневаться в вопросе «стоит ли его использовать» :)
а что плохого в BB-code? их все знают и любят :) И в обработке входящих данныих, и для пользователей они удобнее html-тегов
html-теги можно так же обрабатывать, как и bb-code, если потребуется.
Вот только html можно выводить без распарсивания (то есть, без дополнительных затрат).
Конечно, результат парсинга bb-кода можно кешировать, но, имхо, лучше попросту убрать лишний элемент в цепи сервер->клиент.
html-теги — это самая хуевая разметка на форуме, которая только может быть!

Хабр тому пример. Заебался.
Согласен, но, imho, BBCode ничуть не лучше. Самое оно — Markdown.

P.S. Ну и 21й век вовсю идет. Давно пора уже всем браузерам иметь встроенные редакторы для textarea с минимальным форматированием.
я у себя использую Маркдаун. Но что угодно хорошо, абы html. Потому что если я хочу написать, что «тег делает текст жирным...» я часто ошибаюсь и пишу именно так, вместо того чтобы написать «тег <b> делает текст жирным...». И каждый раз я должен набирать все эти &lt;, &gt;. А если пользователь захочет скопировать цитату с баша, то мне ему придется объяснять все эти нюансы с экранированием? Даже в ББ все намного проще. Кроме Маркдауна еще Вики-разметка есть вменяемая
<Lightbit> Кстати, нашим массовикам-затейникам на потоке дали задание — нарисовать плакат. Уж не знаю, к чему и зачем.
<Lightbit> Теперь на профстене висит плакат с большой надписью «ПЛАКАТ», и в уголке человечек в плаще с буквами К. О. на груди, и внизу под ним подписано «информ».
Во-во! Экранирование — это отдельная жесть (все эти lt-gt), не говоря уже про то, что теги вводить крайне неудобно, и например, бывает, что случайно забывается закрывающая скобка (тогда вообще вся разметка летит к такой то матери), или слэш в закрывающем теге.

Маркдаун прекрасен тем, что ты когда пишешь, не отвлекаешься на форматирование вообще (даже чтобы выбрать слово, дабы обозначить его жирным), и это мега-удобно.
Если верить Xdebug и Webgrind, то парсинг bbcode с помощью модификатора Smarty, который использует pecl-расширение bbcode, занимает 0.07% от времени генерации страницы. 0.07%. Я готов пожертвовать этим временем, ради удобства пользователей и себя :)
А шаблоны только через админку можно редактировать? или через файлы тоже?
Только через админку. Дополнения могут добавлять шаблоны в систему через свой XML.
Жалко. Для обычных пользователей это еще может быть полезно (но они все равно не знают ни HTML ни синтаксис шаблонов), а вот для разработчиков — только мешает (не верю что кому может быть удобно редактировать шаблоны без подсветки синтаксиса, в неудобной textarea, без нормального поиска и т.д. и т.п.).

Оптимальный вариант — возможность редактирования и там и там. Надеюсь когда нибудь это появится…
Ну, вообще-то нормальные разработчики проектируют шаблон в HTML редакторе / блокноте / чем-угодно, а потом полный код вставляют в админке.
Завидую их терпению… Зачем себя мучить, когда можно открыть шаблон в редакторе *сразу*?
по всей видимости это воспоминания о каналах 36Кбит/сек и обрывах соединения в моменты сохранения )
у меня обрывы бывают и на 8 мегабитах…
Ну с подсветку синтаксиса можно сделать с помощью CodeMirror. Но вообще да. Предпочитаю такие форумы редактировать в нетбинсе и закачивать изменения через систему контроля версий. В крайнем случае и откатиться можно.
По моему пора заводить отдельный блог XenForo :)
Почитал, примерно сравнил с тем, что я сейчас пишу. И понял, не такой уж я и быдлокодер, но велосипедист знатный. Продолжу работать :)
Приношу свои извинения за случайное засовывание топика в черновики. Кнопки попутал. Вернул на место только что.
Как-то странно, в эпоху Open Source, Open Hardware покупать $$$ программный продукт с типичной функциональностью… Принято, чтоб продукт был в 2-х версия: Community Free version & Pro Commercial version.
Да по ходу это просто альтернатива VB. Те, кто открывают новый форум, вряд ли решатся на эксперимент с ХепГого.

Импорт и миграция только с vB есть. Даже с рнрВВ предлагают сначала переехать на vB, а потом на еще раз мигрировать на ХепГого.

Я так понял там просто обидевшиеся разработчики продали vB, а потом создали конкурирующий продукт.

По сравнению с vb3, xenforo выглядит очень утонченным и элегантым.

Отличный обзор. Спасибо.
Модульных тестов (ну и интеграционных), как я понял, нет?
Нет. Может, у Кира и есть, но в дистрибутив не входят.
UFO just landed and posted this here
Полностью согласен. Лучше бы про «Ваниллу» с такой тщательностью рассказали.
Хорошая идея. Будет время — попробую, хоть мне и не нравится этот движок. На первый взгляд все там красиво тоже.
А чем именно не нравится?
Просто внешний вид. На XF приятно посмотреть, а Ванилла какая-то… Не очень. Хотя, это чисто личное эстетическое восприятие такое.
Субъективно, конечно. Мне вот наоборот :)
Размер основной части кода 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 тоже весьма сомнительны. Особенно для обычных пользователей, а не опытных разработчиков.
Ну на самом деле у шаблонизатора xenfoo, как я понял при беглом обзоре, синтаксис не сильно от 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% из него.
И «Ванилла» так растолстела уже? :( Жуть.
Only those users with full accounts are able to leave comments. Log in, please.

Articles