Last week I finally had the opportunity to read Drools JBoss Rules 5.x Developer’s Guide, by Michal Bali, and I have to say I was not disappointed.
Michal wrote his first book on Drools 5.0 back in 2009 and with this new book he brings the content up to date with the Drools 5.5/5.6 release.
More importantly, different from other books written about Drools, his writing style is more of a guided tutorial. He starts from the beginning on why and how to write rules and builds on it as it progresses throughout the book. It is an approach that really helps beginners to learn following a logical sequence of content and gradually expanding their understanding of the complete platform.
The book includes plenty of code examples and several notes from the author touching up on design decisions, tips, food for thought and even some best practices.
Regarding content, he covers quite an extensive array of features from the platform, including native DRL rules, Domain Specific Languages, Decision Tables, Complex Event Processing and even Processes with jBPM. He presents not only how to build a solution using rules, but how to properly test and integrate it. He even discusses some of the internal details of the engine for those curious (and brave) enough to read!
Having said all that, I have only one minor nitpick: although most of the examples are didactic and clear, some are not often seen in the field (or at least I haven’t seen then). In any case, it is not easy to find examples that are at the same time easy enough for new users to understand and representative enough of real world applications.
All in all, a great book!