Как подключать модули, классы, библиотеки?

Духовность™

Продвинутый новичок
Мега информативный кусок кода
ага

чтобы подключить класс B необходимо где то создать например древовидную (модульную) структуру. Я храню такое дерево в XML.
блин, ну почему вы так всё любите УСЛОЖНЯТЬ?

скрипт, который по дереву файлов его строит
т.е. надо написать скриптину для генерации этого самого реестра?
 

no_santa

Снегур
triumvirat
На самом деле это действительно мегаинформативный код :)
Я предлагаю поступить так, как сделано в популярных MVC-фреймворках - безо всяких XML организовать древовидную структуру используемых классов, ранжировав их по сути MVC - метаконтроллер (который выполняет основной ход программы, в т.ч. обрабатывает исключения), контроллеры (реагируют на HTTP request, чаще в урлах), модели (и библиотеки), и представления. Получается дешево, но стабильно.

т.е. надо написать скриптину для генерации этого самого реестра?
Symfony, CodeIgniter etc.

-~{}~ 29.08.09 10:22:

Хороший способ сделать что-либо хорошо - изучить творения предшественников. На этом основано явление культуры, как таковое.
 

findnext

Новичок
MiksIr
зачем нам хранить структуру еще отдельно
совсем забыл сказать что это удобно для модульности - сразу видно какие модули установлены, в каких есть расширения и т.д. Т.е это очень удобно.

-~{}~ 29.08.09 12:18:

triumvirat
Есть некий module manager. Каждому модулю можно задать расширение. Модуль и все его части находятся в папке. Если делаешь расширение то в той же папке возникает ещё папка где будут находиться расширения модуля. Т.е нужно начать с того чтобы была какято структура хранения твоих расширений.
С помощью autoload можно загрузить необходимые класс вместе с расширением. Для этого можно использовать
new DirectoryIterator($loopPath).
 

Viktor_Rez

Новичок
У мну все классы самодостаточны и не требуют ничего внешнего. Т.е. любой ознакомившись с обязательными соглашениями построения классов (наличие дефолтной ф-ии и пару строчек прав и привилегий) может написать свой модуль.
И как писал *****, главное - управление шаблонами =))
 
Сверху