12 December 2006

Про проектирование

Меня уже давно мучает вопрос, как же разделить данные и их представление? Т.к. я разрабатываю проекты в основном с использовнием PHP, то и решения я смотрел, реализованные для этого языка.

И так, что же я нашел? Признаюсь, практически ничего. Нет, кончно же есть хорошие шаблонизаторы, но они заточены только на вывод (X)HTML данных. Точнее, не они заточены, их так используют… Хм, этой фразой я сказал, что изобретаю велосипед :). Ладно, допустим, что так. Есть у меня пока такая болезнь юнешеская.

Но, вернемся к тому, что я хочу. А хочу разделить данные и представление. Но это же просто! Вот и мне так подумалось и я реализовал это (Bleizi framework 0.0.1). Но недавно, в очередной раз перелопачивая свой сайт я понял, что на нем нет нормальной навигации! Нет ничего проще, скажете вы.

Но, если подумать ещё немного о навигации, то можно сделать один вывод: она представляет собой дерево (классификация страниц ведется по принципу таксономии, как в файловой системе), причем в один момет активен только один элемент этого дерева. А если есть дерево, можно вычислить путь до активного элемента. Можно вычислить его соседние элементы и т.д.

Во что это вылилось, вы сможете увидеть во втором алфа-релизе моего framework'а ;).

No comments: