Подтвердить что ты не робот

Почему я должен использовать Drools?

Я не эксперт Drools. У меня есть некоторое знакомство с ним, хотя, экспериментируя с ним. Я не могу оценить, зачем мне это нужно.

Мои типичные приложения - деловые веб-приложения. Да, у них есть несколько правил. Но они реализованы с использованием таблиц базы данных, SQL-запросов и приятного пользовательского интерфейса для бизнес-пользователей для изменения Правил. Правила не произвольны, их тщательно продумывают до того, как они будут помещены в Production.

Мои бизнес-пользователи никогда не будут использовать язык сценариев (Drools) для изменения Anything. Позвольте Alone Modify Rules. Они совершенно счастливы использовать экраны пользовательского интерфейса для изменения правил. Плюс они могут сделать синтаксические ошибки zillion в файлах Drools, если я позволю им где-нибудь рядом с ним.

Снова и снова - Почему я должен использовать Drools в этом сценарии?
- Есть фанатики Drools, с которыми я встречался, кто настаивает, что я должен изменить весь свой код, чтобы использовать Drools.

Итак, полезен ли Drools? Я не уверен.

4b9b3361

Ответ 1

Фанатики всех полос должны быть поставлены под сомнение, независимо от того, к какой теме они относятся.

Таблицы решений, управляемые данными, - отличный способ реализовать сложное поведение. В тот день, когда он не масштабируется или не соответствует вашим требованиям, возможно, вам захочется рассмотреть что-то еще.

Я бы не захотел сделать технологический своп в рабочем коде производства, если у меня не было убедительной причины. Это потребует гораздо больше, чем лоббирование фэнов.

Если вам действительно интересно, сделайте PoC и получите реальные данные. Если нет, узнайте, как вежливо улыбаться и игнорировать их.

Я уже говорил об этом раньше:

Правила Двигатель - за и против

ОБНОВЛЕНИЕ: если это ваш босс, и вы не можете уволить, тогда сделайте его основанным на интерфейсе и попробуйте реализацию Drools в PoC. Если вы используете Spring, введите один, а затем другой, измеряя производительность при значимой номинальной нагрузке на продукцию. Получите реальные данные - возможно, вы оба узнаете что-то.

Ответ 2

  • Drools - это с открытым исходным кодом.
  • Он обеспечивает прямую и обратную цепочку выполнения правил.
  • Он содержит определения базового правила шаблона
  • Он реализован с использованием JSR-94
  • У этого есть средство для принятия решения.
  • Его правила удобочитаемы для человека
  • Он интегрирован с Spring

Ответ 3

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

Учебное пособие JBoss Drools