- Taschenbuch: 310 Seiten
- Verlag: Packt Publishing (3. Januar 2012)
- Sprache: Englisch
- ISBN-10: 1849511969
- ISBN-13: 978-1849511964
- Größe und/oder Gewicht: 19 x 1,8 x 23,5 cm
- Durchschnittliche Kundenbewertung: Schreiben Sie die erste Bewertung
- Amazon Bestseller-Rang: Nr. 489.692 in Fremdsprachige Bücher (Siehe Top 100 in Fremdsprachige Bücher)
Drools Developer's Cookbook (English Edition) (Englisch) Taschenbuch – 3. Januar 2012
|Neu ab||Gebraucht ab|
Es wird kein Kindle Gerät benötigt. Laden Sie eine der kostenlosen Kindle Apps herunter und beginnen Sie, Kindle-Bücher auf Ihrem Smartphone, Tablet und Computer zu lesen.
Geben Sie Ihre Mobiltelefonnummer ein, um die kostenfreie App zu beziehen.
Wenn Sie dieses Produkt verkaufen, möchten Sie über Seller Support Updates vorschlagen?
Über den Autor und weitere Mitwirkende
Lucas Amador is a Software Developer born and raised in Buenos Aires, Argentina. His Open Source interest started since young. However, he finally got fully involved in 2008 while working with a JBoss partner and providing consultancy and developing software using the JBoss middleware platform for telco, financial and other such companies. At this time he obtained the Sun Java Developer and JBoss Advanced Developer certifications. He started getting involved in the JBoss Drools community through the Google Summer of Code 2009 program by implementing a refactoring module for the Eclipse Drools Plugin, and since then he is a jBPM5/Drools committer where spend his time implementing new features and fixing bugs. Lucas works as a freelance developer and is always looking something interesting to work in.
|5 Sterne (0%)|
|4 Sterne (0%)|
|3 Sterne (0%)|
|2 Sterne (0%)|
|1 Stern (0%)|
Die hilfreichsten Kundenrezensionen auf Amazon.com
The taglines of this book indicate that it contains "over 40 recipes for creating a robust business rules implementation by using JBoss Drools rules" with "quick answers to common problems". As is the case with many other technical texts which are marketed as "cookbooks", potential readers can never really know what recipes are provided until the text is actually digested, and the quantity of such recipes can oftentimes be elusive (in this case it is 49, so the author should probably have just added another recipe to claim 50), although quantity can be a distraction, since recipes are often all over the map in terms of being lightweight or heavyweight, or even usefulness.
My focus has been Drools Expert, which is only one of five core modules of Drools (jBPM, Drools Expert, Drools Fusion, Drools Guvnor, and Drools Planner, which has been renamed Drools OptaPlanner since this book has been published), so I cannot fault the author for including content on other modules, despite the fact that Drools Expert is really the core module, but of the 49 recipes provided here, only 12 cover Drools Expert, covered in chapter 1 ("Expert: The Rule Engine") and chapter 2 ("Expert: Behind the Rules"). Later in the text, in chapter 6 ("Executing Drools Remotely") and chapter 7 ("Integration: How to Connect to Drools"), an additional 10 recipes fall within the scope of my focus as well, and because this content is really related to Drools Expert, in my opinion it should have followed the first two chapters.
Regardless, the other 27 rules fall within the domain of Drools Guvnor, Drools Fusion, Drools Planner, and jBPM. Because of the problem space that I was tackling on my work project, the descriptions of chapter 6 and chapter 7 were really what enticed me to actually purchased this book. But while I experimented with several of the recipes, such as "knowledge services and multiple endpoints configuration", "setting up Drools using Spring Framework", and "configuring JPA to persist our knowledge with Spring Framework", as an architect I consider much of the content for these recipes quick-and-dirty solutions, and the Drools community is really what helped me sort out all of the available options.
Of the first two chapters, two of the more valuable recipes for me personally were "adding logging to view rules execution behavior" and "using persistence to store knowledge". For this first recipe in particular, it is extremely difficult for me to convey just how difficult it is to find information about such seemingly trivial functionality, but I must say that this recipe provided much of what I needed to actually implement a solution. Notice that I qualified this statement with the word "much", because I adopted Drools 5.5.0.Final for my work project, the most recent stable version of the product at the time, and this text covers Drools 5.2.0.Final. Changes are needed to get even simpler recipes such as this to work with newer versions.
While I was able to eventually get some of the more Java intensive recipes to work, such as "using persistence to store knowledge", be aware that such recipes are not very straightforward, and will likely require perusal of what the Drools community offers on websites, including the API as well as the online documentation that I grew to appreciate as I progressed further into the project. One would think, for example, that this recipe would at least provide all of the Java that is needed to get it to work in some shape or form, but alas, unless the reader is very familiar with Drools Expert, they will need to search the APIs to determine all of the correct import statements just to get the code to compile.
In my review of the other Packt Publishing text, I mentioned that I needed to research how to make use of DRT (Drools Rule Template) files so that I would not need to be dependent on static files. While I did not expect that "introductory" book to cover this material, when looking at the index of this second book, it did seem to cover template topics to at least some extent. But the unfortunate reality is that templates are only covered very lightly in a recipe in one of the Drools Guvnor chapters, and once getting familiar with the sparse information available on websites about this topic, I soon realized that I definitely did not want to go the route taken in the book.
This book is not for Drools newbies-- it jumps right in and provides advice as if you already know your way around the popular open source rule engine. The chapters are logical divisions of functionality. Chapter 1 deals with Rule authoring tips, Chapter 2 with rule engine matters outside of rules. Chapters 3 and 4 cover 'Guvnor', the Business Rule Management System. If you haven't dealt with Guvnor yet, it allows you to author, store, test and categorize your rules via a handy web application. Chapter 5 is probably the most newbie-friendly chapter, it explains Complex Event Processing. CEP is a way to find events that happen within a window of time, like "100 upward stock trades in 5 minutes". Chapter 6 introduces ways to uses Drools remotely, mostly via "Drools Server". Drools server lets you interact with Drools through SOAP and REST interfaces, over HTTP and JMS (among others. Chapter 7 is related, as it covers using Drools with Spring and Camel, both helpers in connecting Drools to your application.
The books is in 'RAW' format at the time of this review, which means it is not complete. The wording is a little awkward in places, but the code is straightforward and easy to read. The author does a good job of covering modern Drools, no small feat with the speed this project is moving. There are 2 chapters that have not yet been provided at the time of this writing, they will cover Drools Planner (a mechanism for finding optimal solutions to planning problems) and jBPM5 (a re-hang of the very popular jBPM Business Process Management framework. I really look forward to reading these when they're available.
I'd recommend this book for any Drools developer that is already fairly competent with the base rule engine.
However, Drools has various different sub-projects that are useful (e.g. Drools Fusion for Complex event processing, Drools Planner, Guvnor, jBPM5 etc) and this book does a very good job of introducing these projects and provides enough examples (and recipes) to get someone started. For e.g., I did not know that I could declare facts in the rules file itself (as opposed to a POJO or XML). I also did not know about the rules verifier which does an analysis of how the rules are written and points out redundancies and conflicts. I found all the recipes to be useful (even though I do not plan on using them all) because they shed some light on Drools the technology and on best practices in using it.
Overall, I highly recommend this book for anyone planning to use Drools beyond a "Hello World" example. The broad coverage of topics and detailed (with working code) recipes definitely makes this book a good buy.