Gunnar Peipman's ASP.NET blog

ASP.NET, C#, SharePoint, SQL Server and general software development topics.

Sponsors

News

 
 
 
DZone MVB

Links

Social

Book review: Patterns of Enterprise Application Architecture

Patterns of Enterprise Application Architecture  
Patterns of Enterprise Application Architecture
Lately I finished reading the famous patterns book by Martin Fowler - Patterns of Enterprise Application Architecture. This book introduces and describes design patterns you will usually see when building enterprise applications. There are also examples for patterns and although they are simple and primitive they give you the idea how to implement or use specific patterns. If you are working on enterprise applications every day you will find this book very useful and I’m sure you will use it as manual. Yes, you can read this book as any other book and you can also use it as manual. In the end of this review you can find table of patterns with links to short introduction for each pattern.

Are these patterns platform specific somehow? No, they are not. It doesn’t matter what platform or language you are using. Of course, you must know your platform well because some of problems solved in this book maybe also already solved on platform you are working on. Don’t try to push all available patterns to your application – use patterns of this book when you face problems that your tools doesn’t solve or that your tools solve poorly. Of course, you can consult with this book if you are not sure how to implement one or another pattern in your application.

My suggestion is to read this book with two other books (of course, there are more recommended books but let’s make a quick start, okay?):

As the result you have better idea of patterns, domain driven design and how to use them in your .NET projects. Enterprise application patterns and domain driven design are both somehow complex topics and Applying Domain-Driven Design and Patterns gives you some ideas about how to apply this knowledge in practice.

Table of contents

Introduction.
Architecture.
Enterprise Applications.
Kinds of Enterprise Application.
Thinking About Performance.
Patterns.
The Structure of the Patterns.
Limitations of These Patterns.

I. THE NARRATIVES.
1. Layering.
2. Organizing Domain Logic.
3. Mapping to Relational Databases.
4. Web Presentation.
5. Concurrency (by Martin Fowler and David Rice).
6. Session State.
7. Distribution Strategies.
8. Putting it all Together.

II. THE PATTERNS.
9. Domain Logic Patterns.
10. Data Source Architectural Patterns.
11. Object-Relational Behavioral Patterns.
12. Object-Relational Structural Patterns.
13. Object-Relational Metadata Mapping Patterns.
14. Web Presentation Patterns.
15. Distribution Patterns.
16. Offline Concurrency Patterns.
17. Session State Patterns.
18. Base Patterns.

References
Index.

Table of Patterns

Martin Fowler introduces all these patterns also on his homepage. There is special patterns catalogue for that. Patterns here are linked to Martin Fowler’s catalogue.

Comments

CNA Training Online said:

Hi there, i read your blog occasionally and i own a similar one and i was just curious if you get a lot of spam comments? If so how do you prevent it, any plugin or anything you can advise? I get so much lately it's driving me mad so any help is very much appreciated.

# December 12, 2011 2:15 AM