I occasionally find myself wondering if architect Christopher Alexander and the many collaborators on his seminal book A Pattern Language ever had any inkling of the vast impact his work would have on the software business. Although Alexander and crew were traditional architects, he has also had an astounding impact on software architecture.
Case in point: on December 15, Microsoft released a free e-book on patterns & practices entitled Application Architecture Guide 2.0. Like many other patterns and practices works (and the entire Microsoft patterns and practices presence on codeplex.com), this book provides an incisive and informative look into the design and architecture for applications built atop the .NET Framework. In the few short weeks that this item has been publicly available, including the holiday season, it's been downloaded over 25,000 times.
Although the download is only 3.2 MB, the work itself is nearly 400 pages long. It follows the same time-honored structure Alexander used: fundamentals, design, layers and archetypes. Along the way, it manages to convey a great deal of useful information about how to think about designing and building applications around the .NET Framework, as well as actually doing the work involved in bringing such applications to life.
This e-book brings the same care and attention to identifying recurring patterns in .NET applications, and in explaining how to code and use them, that Gamma and his team brought to Design Patterns and Alexander and his crew to A Pattern Language. Those who wish to think deeply and design intelligently when working with the .NET Framework will benefit from this book. Coders who labor in building .NET applications can learn from it as well.
Though the prose isn't quite as clean or elegant as Alexander's (his trilogy was the work of a lifetime, and it shows on every page), it's pretty darn good work. The text is clear and concise, and it sticks very much to the subject matter announced in each of the 21 chapter titles, along with the 4-6 objectives succinctly stated at the head of each chapter (again, a nice homage to Alexander's work).
This book is very much worth the time spent reading, thinking about, playing with and putting into one's own terms and frames of reference. As a long-time author with over 100 books to his personal credit, I have to say I'm blown away that Microsoft is giving this excellent book away for free. If you work with .NET, or are thinking about adopting the .NET Framework and related tools (Visual Studio and so forth) for future development, this book is a must-read. Download it today!
Ed Tittel is a full-time writer and trainer whose interests include XML and development topics, along with IT Certification and information security topics. E-mail Ed at email@example.com with comments, questions or suggested topics or tools to review.