все! У меня новый вопрос о Kohana 3, точнее о модульной структуре. Я разрабатываю небольшой модуль под названием Textblock. Это обычная страница или небольшая вставка в макет сайта (например, приветствие или слоган, название компании). Содержит как контроллеры, так и модели. Модели наследуют Sprig_MPTT. И одна функция, которую я хотел бы реализовать, это то, что можно было бы назвать этот модуль следующим образом:
$textblock = Textblock::get_single(1); //by id
$children = Textblock::get_children_of(4); //id of parent
а не
$textblock = Sprig::factory('Textblock')->get_single(1);
$children = Sprig::factory('Textblock')->get_children_of(4);
Эти методы определены в классе Model_Textblock как static
.
Итак, я создал класс-оболочку Textblock
, который наследует Model_Textblock
. Что, если я вдруг захочу заменить Sprig на Jelly, например? Передний план не изменится вообще. Еще одно преимущество, imho, в большей ясности для всех, кто хочет использовать этот модуль (например, это может быть другой программист в команде).
Но есть сомнение, если я нахожусь на неправильном пути ... Итак, сам вопрос: является ли предложенный правильный способ организовать мой модуль? Или лучше оставить обычный Sprig::factory('Textblock')
там, где требуется функциональность Textblock, удалить дополнительный класс-обертку и удалить static
?