This unique book takes good ASP.NET (MVC/Webforms) application construction one step further by emphasizing loosely coupled and highly cohesive ASP.NET web application architectural design. Each chapter
addresses a layer in an enterprise ASP.NET (MVC/Webforms) application and shows how proven patterns, principles, and best practices can be leveraged to solve problems and improve the design of your code. In addition, a professional-level, end-to-end case study is used to show how to use best practice design patterns and principles in a real website.
Professional ASP.NET Design Patterns:
- All patterns and principles are applicable to ASP.NET MVC and ASP.NET Web forms
- Demonstrates how to use the Gang of Four design patterns to improve your ASP.NET code
- Shows how Fowler's Enterprise patterns and the S.O.L.I.D. design principles fit into an enterprise-level ASP.NET site
- Provides details on how to layer an ASP.NET application and separate your concerns and responsibilities
- Details AJAX patterns using JQuery and Json, and messaging patterns with WCF
- Shares best practice tools for ASP.NET such as AutoMapper, NHibernate, StructureMap, Entity Framework, and Castle MonoRail
- Uncovers tips for separating a site's UX and presentation layer using MVC, MVP and the Front Controller patterns
- Features code examples that are applicable to all versions of ASP.NET
This book features C# code examples in ASP.NET MVC and ASP.NET Web forms.
Stay up to date with the latest case study ASP.NET MVC C# code used in the book at the project home page aspnetdesignpatterns.codeplex.com/.
Contents:
Part 1: Introducing Patterns & Design Principles
1. The Pattern for successful applications
2. Dissecting the Patterns Pattern
Part 2: The Anatomy of an ASP.NET Application: Learning and Applying Patterns
3. Layering Your Application
4. Business Logic Layer: Organisation
5. Business Logic Layer: Patterns
6. Service Layer
7. Data Access Layer
8. Presentation Layer
9. User Experience Layer
Part 3: Case Study: The Online E-Commerce Store (ASP.NET MVC 2 in C#)
10. Requirements & Infrastructure
11. Product Catalogue Browsing
12. Shopping Basket
13. Membership
14. Ordering and Payment
Customer Reviews & Comments
This book is a concise guide to most of the GoF design patterns and Fowler's enterprise architecture patterns, combined with contemporary design principles, and set in context.
The text is divided into the standard enterprise application layers, and then the GoF patterns are introduced within each layer to address the concerns of that layer. Each GoF pattern is prefaced with an explanation of where and why you would want to use it and a UML diagram, and then demonstrated through code. You can get a full list of the covered patterns from the TOC.
The text is direct and economical, and, thankfully lacks a lot of the filler tactics and editorializing that seem to characterize most development books these days. It's heavy on code samples, and the samples are also refreshingly concise (e.g., automatic properties instead of space-wasting explicit property bodies, single-responsibility methods and classes instead of bloated catch-all classes dragged out over three pages). Obviously, since the code is meant to demonstrate the design principles the book espouses, the code is relatively concise and easy to read. There are a lot of nice diagrams and ERDs, and the leading frameworks (e.g., NHibernate for O/RM) are demonstrated well.
Overall, it's a pretty good reference for how to layout an enterprise application and how to apply the standard patterns and design principles. I think it's best for those already familiar with the concepts and looking for a reference to take to work with them. I think it's also a good gateway to get people to read Design Patterns, PoEAA, Enterprise Integration Patterns, etc.
There's not much I can really find fault with. Obviously, there are more patterns that could be included, and it could go deeper on various topics, but it achieves what it sets out to do. If I lost my copy, I would buy it again.