Как правильно организовать загрузку модулей?

Статус
В этой теме нельзя размещать новые ответы.

Mendel

Гуру форума
Регистрация
27 Янв 2008
Сообщения
215
Реакции
65
Дано:
CMS, в ней есть некий конфиг в котором описывается какие урлы должен обрабатывать какой модуль.
Колеблюсь между чем-то типа
PHP:
new $module_name($url)
с подгрузкой класса автолоадом и
PHP:
require('../mod/'.$module_name.'.tpl');
main($url);
(пример схематичен)

В объектном конечно же можно не через конструктор передавать данные, но все равно как-то оно грязновато... ну и по мелочи - на этапе отладки столкнулся с тем, что лишние возможности запутаться - скопировал тестовый класс в нужное место и получил ошибку - а переименовать то внутри файла я его забыл :)
Ну и не все программисты достаточно хорошо дружат с ООП синтаксисом.

У второго варианта тоже не очень все стильно и отходим от ООП.

Третий вариант - передать данные какому-то классу, туда же скинуть все отфильтрованные на вопрос инъекций данные из пост/гет, и просто приинклюдить нужный файл, а там уже пусть модуль сам разбирается как он будет работать.
Из минусов здесь только то, что мы никак не можем обратно вернуть результат работы (к примеру факт того признал ли модуль эту ссылку своей или отдать надо 404 или продолжить поиск другого подходящего модуля). Разве что опять таки через некий посредник. В первом варианте можно опросить созданый объект а во втором - вернуть ответ в результате функции main
 
Первый. От ооп лучше не отходить, если пишешь на ней. Да и красивей как то)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху