Структура/шаблон проектирования для проверки бизнес-правил
Какой шаблон структуры/дизайна я должен использовать для приложения, который, возможно, имеет 1000 правил проверки правильности бизнес-класса?
Тип систем, над которыми я работаю, состоит из множества входных форм, которые позволяют пользователям вводить. Каждая форма ввода имеет разные разделы.
то есть. Форма A имеет раздел A/B/C/D. Форма B имеет раздел B/C/D
Некоторые из этих правил проверки правил являются общими для обеих форм. Я рассматриваю подход к повторному использованию правил.
Как создать надежную систему проверки правил бизнес-правил?
Ответы
Ответ 1
-
drools framework является специально разработанный для оценки бизнес-правил.
-
spring framework позволяет запись beans с использованием динамических языков, таких как groovy и jruby. Вы можете легко подключить JavaScript
-
шаблон дизайна стратегии кажется подходящим: реализуйте каждое правило в виде отдельной стратегии и запускайте их один за другим.
-
можно использовать аналогичный шаблон цепи ответственности: каждое правило либо выходит из строя, либо преуспевает и передает управление следующему правилу
Ответ 2
Хорошим шаблоном для реализации бизнес-правил является шаблон спецификации. Это комбинация Strategy, Composite и Interpreter, которая может использоваться для параметризованных и легко комбинируемых правил. Не забудьте также взглянуть на оригинальную бумагу (pdf) от Fowler и Evans и взглянуть на книгу Domain Driven Design, если вы можете.