Master Drools programming - from Beginner to Intermediate
What you'll learn
- program rules in Drools 7 domain specific language
- detect problems and patterns in software development that are good to be solved with a rule engine like Drools
- decouple complex decision trees into individual simple to understand rules
- Drools language constructs like insert, modify, exists, forall, insertLogical, salience, agenda-group etc
Requirements
- You should have basic understanding of Java programming
Description
We learn Drools DSL (Drools programming language) and go over the most common DSL constructs. We move in small steps and gradually introduce new consepts so it is easier to follow even for a beginner.
This way we cover the most common Drools topics like:
what is a rule engine
what is a difference between a method and a rule
why one would use a rule engine instead of writing regular Java code
understanding of the when/then clauses
understanding in which order the rules fire and when the order is not known
how to control the execution using activation-groups, agenda-groups and salience
declaring variables in DRL
difference between stateless and stateful sessions
inserting facts and modifying existing objects in the session
cross products (similar to SQL join)
exists, forall and collect
This course comes with a Java project that has all the code we look throughout this course. You are encouraged to check out and run the code yourself to get better understanding and experiment yourself with making changes to it. There are instructions how to get the code running in IntelliJ, Eclipse and VS Code.
After completing this course you have a better understanding of which kind of problems could be solved with Drools and how to write most common business rules in Drools DSL.
Who this course is for:
- Developers and system architects who need to understand what a rule engine is and which type of problems can be solved with it
- Anyone who needs to write rules in Drools DSL programming language
- Developers and system architects needing more info about adding Drools rule engine to their project
Instructor
Since 2005 I have been working as a Java Developer / Solution Architect / CTO. I have created several in-class courses and two courses on Udemy. I'm passionate about learning new technologies and explaining them in a clear and understandable way. I'm a fan of domain-specific languages - small programming languages that are designed for a specific task. For the past years, I have been involved with a project that heavily relies on utilizing Drools Rule Engine.