Фоновые процессы

iceman

говнокодер
Со временем в системе появляется большая потребность в фоновых процессах.
Процессы которые не требуют участия (онлайн) пользователя, работают они в основном на данных введенных им в прошлом (офлайн).

В общем проблема такая, логика процесса может не соответствовать настройкам системы (например, система очень гибкая, как админ настроил так и работает). Фоновый процесс должен произвести какое то действие над объектами сущности, выбрав их по "определенному" критерию, но у процесса есть свои правила над содержанием этой сущности. Например администратор настроил не обязательный ввод каких либо полей, пользователь их соответственно не вбил, а процесс их требует. получается разногласие.

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

Т.е. нужно как то для программиста обеспечить видимость того, что используется фоновый процесс (решение - все методы в одном классе, плагине\хендлер) и ограничить его в возможностях (т.е. чтобы не запихнули всякую чушь в этот плагин).

Может есть какие-нибудь паттерны, решающие мою задачу?
 

keltanas

marty cats
Думаю, что он не найдет там ответа. Скорее все-таки нужно это, а для начала упрощенный вариант.

2 iceman Нужно, чтобы логика для обоих процессов хранилась в одном месте. Самое простое и достаточное, это инкапсуляция ее в Доменные объекты (того или иного вида).
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
keltanas посмотри дату регистрации iceman-а, количество его постов, и подумай почему он все это спрашивает, если эти темы обсуждаются здесь постоянно
 

keltanas

marty cats
дык вперед, белый рыцарь, не словом, а делом, а лучше сразу вышли ему денег
Ваш сарказм тут ни к чему. Я ему лучше все это в электронном виде вышлю. А денег пока не заслужил.
А если тут эти темы прямо на каждом шагу обсуждаются, а он за 5 лет так и не вразумел, так это чьё тогда упущение?
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
вероятно, здесь нужно побольше таких добрых людей, как ты, и поменьше сарказма, как у меня
 
Сверху