August book review: Patterns of Enterprise Application Architecture

Martin Fowler
Patterns of Enterprise Application Architecture

This book catalogs a collection of design patterns commonly used when writing business applications:

  • Domain Logic
    Transaction Script, Table Module, Domain Model, Service Layer
  • Data Source
    Table Data Gateway, Row Data Gateway, Active Record, Data Mapper
  • Object-Relational Behavioral
    Unit of Work, Identity Map, Lazy Load
  • Object-Relational Structural
    Identity Field, Foreign Key Mapping, Association Table Mapping, Dependent Mapping, Embedded Value, Serialized LOB, Single Table Inheritance, Class Table Inheritance, Concrete Table Inheritance, Inheritance Mappers
  • Object-Relational Metadata Mapping
    Metadata Mapping, Query Object, Repository
  • Web Presentation
    Model View Controller, Page Controller, Front Controller, Template View, Transform View, Two Step View, Application Controller
  • Distribution
    Remote Facade, Data Transfer Object
  • Concurrence
    Optimistic Offline Lock, Pessimistic Offline Lock, Coarse-Grained Lock
  • Session State
    Client Session State, Server Session State, Database Session State
  • Miscellaneous
    Gateway, Mapper, Layer Supertype, Separate Interface, Registry, Value Object, Money, Special Case, Plug-in, Service Stub, Record Set

Many of these patterns are available as frameworks and you do not need to implement them from scratch. As a side effect, the frameworks, such as O/R mapping and web presentation tools, have a tendency to hide their implementation techniques. The patterns cataloged and described by Martin Fowler will help you understand what happens behind the scene and and use this knowledge for optimizing, troubleshooting, and improving the design of your applications.

This book has something valuable for everybody. If you are new to the industry, you will learn about common recurring problems building enterprise applications and study techniques to solve them. If you used these patterns before, you will deepen your understanding of them.

Click here to find out more about this book. Happy reading!

Modelus Specification released!

Our new open source product went live this week: Modelus Specification. It is an implementation of a very powerful design pattern originally described in the Domain Driven Design book by Eric Evans as well as in this article by Eric Evans and Martin Fowler.

The library is written in C# using generic interfaces. The source code, binaries, and documentation are distributed under the Apache open source license, version 2.0. 

Give Modelus Specification library a try and check out our other open-source products. Let me know what you think or if you have any questions. Enjoy!

Welcome to ModelBlog

Thank you for visiting ModelBlog. We hope the time you spend with us will be both entertaining and worth your while. Have fun!

Authors

Search

Archive

Tags