First Thank you so much for your great video. Second, I think this is nothing but polymorphism, you don't need to filter or match on anything, the JVM will understand what method it will execute based on the type of the POJO. Rule engines are mostly created to ensure the flexibility of rules regardless of the object types. in other words, adding more rules should be decoupled from the core code. Thank you.
If possible can you please make a video on how frameworks will scan all the annotations that exist in the application at runtime(dynamically) in a cleaner way. I want to whether they will cache this annotation metadata or they will scan entire application on demand
What if instead of changing just one property in the rule we need to change doZens of properties? Should we implement a rule engine in each rule of the main rule engine?
Great video and explanation. Is there a way to externalize the rules? (declarative way) so that no coding/compiling/deployment would be needed to add new rule. (rule can come from config/csv etc..like Drool) Any suggestions? I am wondering if to go for Drool or use Java Generics
If you have 200 rules, create a singleton of implementation and load it as Map with Key as rule name and value as implementation object. Based on the rule to be used at runtime, you can load the rule from Map. This is in-memory storage but you need rules across multiple servers then one can go for external cache e.g. Redis. Does it answer your question?
@@konstantinthekonstantin example is use hashmaps Rule 1 key = addition and value is addition object which implements rules interface and has method calculate. This rules does the addition Rule 2 key = multiply and value is multiply object which implements rules interface and has method calculate. This rules does the multiplication. You can use runtime polymorphism to get the object using interface as reference
After watching this video i have implement this in 2 big projects. Thanks you very much for this video.
First Thank you so much for your great video. Second, I think this is nothing but polymorphism, you don't need to filter or match on anything, the JVM will understand what method it will execute based on the type of the POJO. Rule engines are mostly created to ensure the flexibility of rules regardless of the object types. in other words, adding more rules should be decoupled from the core code. Thank you.
Awesome content, a intro to Drool and Spring Statemachine would be cool
Just a thought.. iPhoneRule and AndroidPhoneRule naming would have been less confusing as they're implementing RuleI
It would be nice to get the update for that
If possible can you please make a video on how frameworks will scan all the annotations that exist in the application at runtime(dynamically) in a cleaner way.
I want to whether they will cache this annotation metadata or they will scan entire application on demand
very good explanation..
Good job, can you create a rate engine example?
And whats the best design patterns to use with rule engine?
Hi can you do a session about Drools with Spring Boot
Llooking for Rules engine with configurable way which is supports a spring boot way.
Good video !!
Could you present a video on Clara Rule engine
Nice, thanks!
What if instead of changing just one property in the rule we need to change doZens of properties? Should we implement a rule engine in each rule of the main rule engine?
What is the significance of process() API why is it used?
Can we create a new Instance and pass?
Is it same as factory or statergy design pattern but just skiping if else part?
but does it comply with SOLID principles?
Great video and explanation.
Is there a way to externalize the rules? (declarative way) so that no coding/compiling/deployment would be needed to add new rule. (rule can come from config/csv etc..like Drool)
Any suggestions? I am wondering if to go for Drool or use Java Generics
Good explanation .. if I have 200 rules , 200 interface and implementation ? Can you share your thoughts to overcome from this please please please?
If you have 200 rules, create a singleton of implementation and load it as Map with Key as rule name and value as implementation object. Based on the rule to be used at runtime, you can load the rule from Map. This is in-memory storage but you need rules across multiple servers then one can go for external cache e.g. Redis. Does it answer your question?
Makarand Parab thank you very much sir . Appreciated .
@@Makarand76 Hello! Could you please provide a simple example of this? I would be extremely appreciated
.
@@konstantinthekonstantin example is use hashmaps
Rule 1 key = addition and value is addition object which implements rules interface and has method calculate. This rules does the addition
Rule 2 key = multiply and value is multiply object which implements rules interface and has method calculate. This rules does the multiplication.
You can use runtime polymorphism to get the object using interface as reference
@@Makarand76 Thanks a lot!
Nice video broi
Hi, have you stopped designing architecture for any app..
You have deleted paytm design app also
No mate. Will upload with much cleaner solutions.
Tech Primers great.
👍 thank you
waiting for it
Awesome video on Rule Engine..
One question, is Drool similar to this concept?
Yes similar. But you will write .DRL(drool file) for the rules
Got you.. can you pls also plan to do a tutorial on Drool with Spring Microservice and Angular as an example..
That will be awesome 👍
bro can you tell which ide you use
It's IntelliJ IDEA
And it rocks