I think everyone is familiar with the design pattern, but maybe everyone is familiar with gof's 23 patterns. Some even equate them. In fact, the pattern is the repeated solution of repeated problems. It is used to solve the same solution used in the same or similar context.
Last year, I scanned patters of enterprise application Achitecture (also called pofeaa), but I was hardly impressed. As a result, I become more and more admired by Martin Fowler. Since today, I plan to repeat it again. I don't know when I can stick to it. Here I may put a lot of things in the original book here. However, due to my level, I plan to study patterns in three steps.
Step 1: first understand the content in the book and master the characteristics of the model;
Step 2: Learn the application mode and think of its solution (mode) when you encounter it );
Step 3: Discover the patterns in your life (discovery is not an invention );
The introduction and the first part of the expression in pofeaa are not introduced here. You can directly enter the introduction mode. Sequence of introduction:
1. Basic Mode
2. WEB presentation mode
3. Object-link mode
4. Domain logic model
5. Distribution Mode
6. Other modes (Data Source mode, offline mode, and session state mode)
Today, it is relatively idle recently. I plan to introduce the entry (GATEWAY) in the basic mode in another article.
========================================================== ==========
Patterns list
Basic Mode:
Gateway
Mapper
Layer supertype
Separated Interface
Registry
Value Object
Money
Special case
Plugin
Service stub
Record set
WEB presentation mode:
MVC
Page Controller
Front Controller
Template View
Transform View
Two set view
Application Controller
Object-link mode
Table Data Gateway
Row data Gateway
Active record
Data mapper
Unit of work
Identity Map
Lazy load
Identity Field
Foreign key Mapping
Association Table Mapping
Dependent Mapping
Embedded value
Serialized lob
Single Table inheritance
Class table inheritance
Concrete talbe inheritance
Inheritance mappers
Metadata Mapping
Query object
Repository
Domain logic model
Transaction script
Domain Model
Table Model
Service Layer
Distribution Mode
Remote Facade
Data transfer object
Other Modes
Optimistic offline lock
Pessimistic offline lock
Coarse-grained lock
Implicit lock
Client Session state
Server session state
Database session state