Одна из часто встречающихся проблем императивных языков программирования это отсутствие выражений для декларативных структур, таких как, к примеру, древовидные разметки или набор правил для обработки данных. В Groovy эта проблема решена с помощью классов типа Builder и мета-программированием на уровне абстрактного синтаксического дерева.
Читать полностью »
Метка «Rule Engine»
Validation DSL на Groovy
2012-12-02 в 20:02, admin, рубрики: dsl, groovy, Rule Engine, я пиарюсь, метки: dsl, groovy, Rule Engine, я пиарюсьRule Engine, или как сделать систему проще
2012-04-23 в 10:19, admin, рубрики: Rule Engine, Анализ и проектирование систем, высокая производительность, Программирование, метки: Rule EngineДобрый дня всем!
В этой статье я не буду касаться технических вопросов и не приведу примеров кода. Эта статья призвана дать понятие, что такое Rule Engine, для чего эта штука и что она умеет. Если вас заинтересует такой подход к построению систем, то вы без проблем найдете Rule Engine на ваш вкус и цвет.
Итак, зачем же эта штука нужна. Возьмем какое нибудь предприятие, которое живет в весьма быстром ритме. Например один из крупнейших аэропортов, где каждые несколько минут происходит посадка или взлет.
Вопросы и ответы
Задайте себе вопросы:
- Кто, как и на основании чего решает, в каком порядке самолеты садятся и взлетают?
- Какова может быть цена неверного решения?
Второй вопрос проще, поэтому ответим сначала на него. Минимальная цена это несколько десятков тысяч евро, а вот максимальная несколько сотен человеческих жизней. А теперь к первому вопросу.
Итак, кто? Ответ: в большинстве случаев люди. Не без помощи компьютеров конечно, но все таки люди. Теперь вопрос: как? Есть список возможных вариантов, человек из них выбирает. Вариантов дается немного, поэтому в принципе особых мук выбора нет. И последний вопрос: на основании чего? Есть правила, их нужно придерживаться и по возможности выполнять. Например, задержка вылета более чем на полчаса весьма нежелательна. Ну и главный вопрос: а причем тут Rule Engine?
Читать полностью »