原文: http://www.martinfowler.com/eaaCatalog/index.html

Last Significant Update: January 2003

以下は、『Patterns of Enterprise Application Architecture (P of EAA)』で扱ったパターンの簡単なサマリである。

各パターンの概要をページ毎に載せているが、パターンは単独で用いられることを想定していない。これは、パターンに馴染みのある人向けの、単なる覚書のようなものである。これで気軽にオンラインでパターンを参照することが出来ましょうぞ。 将来的にここにコメントを追加するかもしれないが、とりあえずこれがうまく行くことを見守ろう。

David Heinemeier Hanssonが私のために素晴らしいダイアグラムを書いてくれたんだが……このVisioが吐いたGIFのきたなさったら。

Domain Logic Patterns:

TransactionScript (110), DomainModel (116), TableModule (125), ServiceLayer (133).

Data Source Architectural Patterns:

TableDataGateway (144), RowDataGateway (152), ActiveRecord (160), DataMapper (165).

Object-Relational Behavioral Patterns:

UnitofWork (184), IdentityMap (195), LazyLoad (200)

Object-Relational Structural Patterns:

IdentityField (216), ForeignKeyMapping (236), AssociationTableMapping (248), DependentMapping (262), EmbeddedValue (268), SerializedLOB (272), SingleTableInheritance (278), ClassTableInheritance (285), ConcreteTableInheritance (293), InheritanceMappers (302).

Object-Relational Metadata Mapping Patterns:

MetadataMapping (306), QueryObject (316), Repository (322).

Web Presentation Patterns:

ModelViewController (330), PageController (333), FrontController (344), TemplateView (350), TransformView (361), TwoStepView (365), ApplicationController (379).

Distribution Patterns:

RemoteFacade (388), DataTransferObject (401)

Offline Concurrency Patterns:

OptimisticOfflineLock (416), PessimisticOfflineLock (426), CoarseGrainedLock (438), ImplicitLock (449).

Session State Patterns:

ClientSessionState (456), ServerSessionState (458), DatabaseSessionState (462).

Base Patterns:

Gateway (466), Mapper (473), LayerSupertype (475), SeparatedInterface (476), Registry (480), ValueObject (486), Money (488), SpecialCase (496), Plugin (499), ServiceStub (504), RecordSet (508)

Revision History

Here’s a list of the major updates to this paper

  • January 2003:

PofEAA index | パターンカタログの日本語版 | パターンカタログの英日対応表