The subtitle to this book is “An Introduction to Object-Oriented Analysis and Design and the Unified Process”, and it is indeed a book about object-oriented analysis and design. Applying UML and Patterns uses the unified process (UP) as the iterative process within which OOA/D is introduced, and contains a single case study which is elaborated on throughout the book.
Applying UML and Patterns is not about learning the UML. It’s about teaching you to “think” in objects with operations and properties. It helps to put into perspective what UML and patterns are being applied at which stages in the software development process. Even if you already know UML, this context alone is worth the book’s price. After reading this book you will have a different opinion on the importance and use of most of the UML diagrams. Many times Craig delves into the “whys” of something, helping you understand the reason for each element from a business point of view.
One of the most valuable parts of the book are detailed examples of how to use each of the basic (GRASP) patterns along with some popular Gang of Four (GOF) patterns to create solid software designs. Although it seems tedious to consider all the angles Larman uses, it brings to light many different factors to consider while designing software.
Check out more book reviews at the WeProgram.NET Book Review page.