Дмитрий Сергеевич (axshavan) wrote,
Дмитрий Сергеевич
axshavan

Усей и nested sets

Буквально вчера я придумал усей (что это, я скажу позже), но не знал, куда его применить. А сегодня я встретился с Барбузой (его журнал суспендили довольно давно), и он мне рассказал про nested sets. Вкратце - это технология создания виртуального дерева сайта, позволяющая даже в MySQL одним запросом выковыривать информацию о ветви любой степени вложенности без привлечения всяких кэш-таблиц и прочего. И я понял, что знаю, куда можно применить усей!
UCEI - Universal Component-Engine Interface. Используется для универсализации компонентов сайта и движков. Суть его проста. Каждый компонент лежит в своей папке со всеми файлами, которые ему там нужны, может иметь разветвленную файловую структуру или вовсе сосотоять из одного файла. Короче, архитектура компонента может быть любой. Но с одним ограничением, и это ограничение как раз и есть усей. Компонент должен иметь универсальную точку входа, за которую его будет дергать движок. В папке компонента должен лежать файл с именем, например, gzagzayaaaarh.php (или любым другим, но надо обязательно решить, каким), а в нем - функция component_droching($_argsIn, &$_argsOut ... ) (или с другим названием), которую вызывает движок. $_args - это какие-то передаваемые аргументы.
Зачем это надо. Вот, например, CHLOSSER - универсальный, то есть не заточен ни под один тип контента, а, скажем, у Бало есть в ядре прямо встроенный функционал для показа статических страничек. С точки зрения компонента, который статичную страничку показывает, пофиг, кто и зачем от него хочет её получить. Задача компонента - у себя в табличке по полученному id нужный кусок текста найти и отгрузить в буферную переменную. Если я когда-нибудь допишу CHLOSSER и захочу написать новый движок (например, на nested sets), то, для того, чтоб не переделывать все-все-все написанные уже компоненты, я напишу его также под усей. И всё - подцепил и рад. Вот.
Tags: web
Subscribe

  • Велопоездка в Дрезден

    В выходные со своим знакомым по имени Илья я доехал до Дрездена на велосипедах. Не из Праги, правда, а только из Дечина. Вид из окна поезда, где-то…

  • Велопоездка

    Сегодня ближе к вечеру поехал кататься на велосипедах с коллегой по работе Петром (он Петр, не Пётр - чешское имя). Обойдусь без излишних…

  • Как я вчера катался на велосипеде

    Поменял, значится, покрышки. Гладенькие летние асфальтовые на зимние забустенькие. Иногда у меня складывается ощущение, что я чаще меняю покрышки на…

  • Post a new comment

    Error

    Comments allowed for friends only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 6 comments