Реализуем внутреннюю архитектуру CMS. Часть первая
Ноябрь 6, 2007
Сейчас речь пойдет о том, как определиться с инфраструктурой нашей будущей CMS.
Начну я с самого главного — со связующего звена — файла путей. Поскольку, за основу взята концепция MVC, то мы определяем 2 ведущие папки, которые будут использоваться как хранилища скриптов:...
- app — приложение. Здесь будут собираться и работать скрипты, которые будут заточены именно на обработку и вывод информации.
- kernel — ядро системы. Ничем оно и не занимается, кроме как обеспечивает функционирование приложения.
Займемся папкой kernel: я предлагаю следующий вариант: дабы не смешивать все вспомогательные классы в единую кучу — разиваем ее еще не несколько логически-оправданных групп:
- classes — самописные классы (некоторое подобие PHP FrameWork, которые мы будем использовать при построении приложения.
- libs — хранилище написанных библиотек функций и классов, написанных не нами, но любезно предоставленных в наше распоряжение с оговоркой на GNU-лицензию.
- defines — папка, которая будет содержать в себе файлы-дефайнеры различных переменных. Чуть позже мы к ним вернемся :).
Перейдем к папке app (приложения).
- coms — папка компонентов системы
- mods — папка модулей
- bots — папка системных «ботов»
- views — папка представлений (разметка модулей и компонентов при выводе)
- templates — папка шаблонов(под различные клиенты: обычный браузер, pda)
Ноябрь 6, 2007 в 13:33
Очень дельная статья.
Подписался на ленту. Все то, чего не мог найти раньше.
P. S. классы можно взять с phpclasses.org
Ноябрь 7, 2007 в 02:07
Классы брать у phpclasses.org я для ядра не буду — все в специфичности задачи заключается.
Хотя, никто не запрещает вам ложить в будущую систему эти классы, с одной оговоркой — в качестве libs- не более.
Январь 16, 2008 в 00:54
Своя cms — это хорошо, все реализовано так, как самому удобно. Но есть минус. Она по функциональности и «красивости» будет проигрывать паблик cms (массовоюзаемым). Из-за банальной нехватки времени. А cms без множества модулей, это нехорошая cms. Да, согласен, ты сможешь написать. Но сколько на это потребуется времени?
Январь 16, 2008 в 10:38
Bookie, модуль, скажем, вывода 5-ти последних новостей — это 1 запрос в моей системе... Пишется такой модуль 3 минуты.
Потом инсталлится. Конфигится 5 минут — и ложится в репозиторий...
Думаешь, Joomla всегда была такой крутой? Я помню времена по мамбе, когда люди сами писали даже вывод категорий