parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Как правильнее разнести методы класса в разные файлы?

Popeye 15.10.2014 22:14

Допустим есть класс webcore, который реализует все функции сайта безотносительно html, т.е. являет собой по сути API сайта,
но сам файл класса (допустим webcore.p) получается довольно большим, т.к. несет много методов - от auth до get_catalogue,
или прочее - то есть фактически реализуя всю Model (по понятиям MVC)

Методов может быть много, т.к. они реализуют общее конечное API back-end'а работать с ними в одном файле-портянке может быть весьма неудобно.

С наскока "по-колхозному" видится что-то такое:
@CLASS
webcore

# инициализация окружения
@auto[]
$sess[...]


# пошли методы back-end'а

@auth[action;login;password]
^use[/_webapp/classes/webcore/mthd_auth.p]

@get_content[objname;type;format]
^use[/_webapp/classes/webcore/mthd_get_content.p]

#...
Т.к. webcore читается на каждую сессию, т.к. в минимальном обращении инициирует пользовательское/сессионное окружение, то
читается относительно небольшой файл лишь с названиями методов и строкой use

а дочитываются только содержания тех методов, что вызываются в данный момент


Или можно как-то "кошернее" ?