So I’ve had Enterprise Integration Patterns sitting on my bookshelf for quite a while now. I had skimmed it a few times, but never really gave it a read.
It’s a hefty book that you could definitely use to cause some major kidney trauma to an unsuspecting DBA if you sneak up on him from behind and jab the pointy end of the book into his unprotected backside.
I finally got around to reading this because it is one of my last remaining analog books. It is part of my quest to cleanse my life of all possessions that are not digital or are not monitors.
This book is really about messaging. Don’t let the title fool you. Definitely consider picking up this book if you want to use a messaging platform like BizTalk, MSMQ, or JMS to integrate several applications together.
The good:
- This book is extremely detailed about each messaging pattern, when to use it, and how to implement it. If you are seriously going to consider implementing a messaging solution, you need this book. Honestly, I have done some messaging without it and now that I have read it, I feel like I really missed the whole point before.
- Multi-language / technology. This book is generalized enough to not push you in a language or technology decision, but has specific examples in Java and C#.
- Simple to understand. I was rushing through this book because I wanted to get through it and I found that I was picking up pretty much every concept being thrown.
- Excellent reference. I can see using this book in the future to go back and solve some sort of problem dealing with messaging.
- Broken down into perfect size pieces. If you read this book, you should have all the tools you need to solve any kind of complex messaging scenario. By thinking of messaging in terms of the patterns or blocks in this book, very complex problems become much simpler.
The bad:
- It is freaking long. Seriously. This is a long book. It has some diagrams and some code, but it is long. Get ready for an adventure.
- It’s a little dry, probably because it is so long. Some of the code examples are a bit repetitive, and no one ever wants to see XML soap bindings on pages in a book.
What I learned:
I have to say that I really did learn a large amount of information from this book. I really feel like I got a good understanding of how to apply messaging patterns to various sorts of problems.
I feel like this book gave me a really big toolbox of all the possible tools that I would need to solve any messaging pattern.
I also learned just how easy it is to use MSMQ and JMS and throw messages on a pipe. It’s really not that bad.
After having used BizTalk a while ago and not really understanding what it was or what it was trying to do besides allow you to change file formats between a bunch of different clients, I feel like this book definitely opened up my eyes to the true value of a solution like that. If I had a BizTalk project now, I am sure I would be much more effective after reading this book.
Overall, I would definitely recommend that every developer that is working with messaging read this book. Even if you are not, I would still recommend reading it so that you can have your eyes opened up to how messaging can solve many of the problems we try to solve in create-ftp-batch-cron-jobish ways.
As always, you can subscribe to this RSS feed to follow my posts on Making the Complex Simple. Feel free to check out ElegantCode.com where I post about the topic of writing elegant code about once a week. Also, you can follow me on twitter here.
