Skip to content

DesignPatterns

kalibora edited this page Mar 25, 2012 · 3 revisions

GoF

リンク

パターン

  • 生成
    1. Abstract Factory
    2. Builder
    3. Factory Method
    4. Prototype
    5. Singleton
  • 構造
    1. Adapter
    2. Bridge
    3. Composite
    4. Decorator
    5. Facade
    6. Flyweight
    7. Proxy
  • 振る舞い
    1. Chain of Responsibillty
    2. Command
    3. Interpreter
    4. Iterator
    5. Mediator
    6. Memento
    7. Observer
    8. State
    9. Strategy
    10. Template Method
    11. Visitor

POSA

リンク

パターン

J2EE

リンク

パターン

  • プレゼンテーション層
    1. Intercepting Filter
    2. Front Controller
    3. View Helper
    4. Composite View
    5. Service to Worker
    6. Dispatcer View
  • ビジネス層
    1. Business Delegate
    2. Data Transfer Object (Value Object)
    3. Session Facade
    4. Composite Entity
    5. Value Object Asssembler
    6. Value List Handler
    7. Service Locator
  • インテグレーション層
    1. Data Access Object
    2. Service Activator

PofEAA

リンク

パターン

  • ドメインロジック
    1. トランザクションスクリプト(TransactionScript) (115)
    2. ドメインモデル(DomainModel) (123)
    3. テーブルモジュール(TableModule) (133)
    4. サービスレイヤ(ServiceLayer) (142)
  • データソースのアーキテクチャ
    1. テーブルデータゲートウェイ(TableDataGateway) (153)
    2. 行データゲートウェイ(RowDataGateway) (162)
    3. アクティブレコード(ActiveRecord) (170)
    4. データマッパー(DataMapper) (175)
  • オブジェクトリレーショナル振る舞い
    1. ユニットオブワーク(UnitofWork) (197)
    2. 一意マッピング(IdentityMap) (209)
    3. レイジーロード(LazyLoad) (213)
  • オブジェクトリレーショナル構造
    1. 一意フィールド(IdentityField) (231)
    2. 外部キーマッピング(ForeignKeyMapping) (254)
    3. 関連テーブルマッピング(AssociationTableMapping) (266)
    4. 依存マッピング(DependentMapping) (282)
    5. 組込バリュー(EmbeddedValue) (288)
    6. シリアライズBLOB(SerializedLOB) (292)
    7. シングルテーブル継承(SingleTableInheritance) (298)
    8. クラステーブル継承(ClassTableInheritance) (306)
    9. 具象テーブル継承(ConcreteTableInheritance) (314)
    10. 継承マッパー(InheritanceMappers) (324)
  • オブジェクトリレーショナルメタデータマッピング
    1. メタデータマッピング(MetadataMapping) (327)
    2. クエリーオブジェクト(QueryObject) (338)
    3. リポジトリ(Repository) (345)
  • Webプレゼンテーション
    1. モデルビューコントローラ(ModelViewController) (351)
    2. ページコントローラ(PageController) (354)
    3. フロントコントローラ(FrontController) (366)
    4. テンプレートビュー(TemplateView) (373)
    5. トランスフォームビュー(TransformView) (384)
    6. ツーステップビュー(TwoStepView) (388)
    7. アプリケーションコントローラ(ApplicationController) (403)
  • 分散
    1. リモートファサード(RemoteFacade) (411)
    2. データ変換オブジェクト(DataTransferObject) (425)
  • オフライン並行性
    1. 軽オフラインロック(OptimisticOfflineLock) (439)
    2. 重オフラインロック(PessimisticOfflineLock) (450)
    3. 緩ロック(CoarseGrainedLock) (462)
    4. 暗黙ロック(ImplicitLock) (474)
  • セッションステート
    1. クライアントセッションステート(ClientSessionState) (479)
    2. サーバセッションステート(ServerSessionState) (481)
    3. データベースセッションステート(DatabaseSessionState) (485)
  • ベース
    1. ゲートウェイ(Gateway) (489)
    2. マッパー(Mapper) (496)
    3. レイヤースーパータイプ(LayerSupertype) (497)
    4. セパレートインタフェース(SeparatedInterface) (499)
    5. レジストリ(Registry) (502)
    6. バリューオブジェクト(ValueObject) (508)
    7. マネー(Money) (510)
    8. スペシャルケース(SpecialCase) (518)
    9. プラグイン(Plugin) (521)
    10. サービススタブ(ServiceStub) (526)
    11. レコードセット(RecordSet) (530)

DDD

リンク

パターン