Patterns of Enterprise Application Architecture Workshop Training Course

Patterns of Enterprise Application Architecture are an advanced toolset for designing and architecting enterprise applications. If you are already familiar with basic design patterns such as Gang Of Four, this new set of constructs is the next level of knowledge for you. We recommend training around Patterns of Enterprise Application Architecture for engineers who want to pursue a career as a Senior Engineer or as a Software, Application, or Solutions Architect.

Training Curriculum


Domain logic patterns
  • Transaction script
  • Domain model
  • Table module
  • Service layer
Data source architectural patterns
  • Table data gateway
  • Row data gateway
  • Active record
  • Data mapper
Object-relational behavioral patterns
  • Unit of work
  • Identity map
  • Lazy load
Object-relational structural patterns
  • Identity field
  • Foregn 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 patterns
  • Metadata Mapping
  • Query Object
  • Repository
Web presentation patterns
  • Model View Controller
  • Page Controller
  • Front Controller
  • Template View
  • Transform View
  • Two-Step View
  • Application Controller
Distribution patterns
  • Remote Facade
  • Data Transfer Object
Offline Concurrency Patterns
  • Optimistic Offline Lock
  • Pessimistic Offline Lock
  • Coarse Grained Lock
  • Implicit Lock
Session state patterns
  • Client Session State
  • Server Session State
  • Database Session State
Base Patterns
  • Gateway
  • Mapper
  • Layer Supertype
  • Separated Interface
  • Registry
  • Value Object
  • Money
  • Special Case
  • Plugin
  • Record Set

Ready to take your team to the next level?
Let's Talk
All Training Courses

Training Courses for the Smart Ones

    Have you ever been on training where an instructor cannot answer your questions?
    Have you ever left the training with a feeling that you didn't learn anything new?
    Me too.

    I don't teach things that I have not or cannot do myself, so I am not a typical trainer. I teach things that I do daily. People who have worked with me consider me as an exceptionally knowledgeable professional. I can help you learn intricate skills that will allow you to become a top-notch professional. I will answer every question you can have, ensuring that you leave my training on another level than what you had before you came to me.

    - Tengiz Tutisani