Index[A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] ParticipatingLogicalFields partitions Domain Model reasons for using Party Archetype pattern adoption patterns Aggregates 2nd advanced database support concurrency domain-related rules Fake queries save scenarios versioning Architectural Patterns Domain Model pattern layers (example) Chain of Responsibility Collecting Parameter 2nd Concrete Table Inheritance Data Mapper 2nd 3rd choosing approach code generation of custom code custom manual code Metadata mapping Decorator 2nd 3rd Design Patterns Query Objects (example) state pattern (example) Strategy Domain Model Pattern Domain Patterns Factory (example) Factory Method Factory pattern 2nd 3rd 4th Inversion of Control list customers by applying flexible and complex filters problem solution proposal one solution proposal three solution proposal two Generation Gap 2nd GoF Identity Map infrastructure patterns controlling concurrency Eager Load Embedded Value Foreign Key Mapping Identity Field Identity Map Inheritance hierarchies Lazy Load Metadata Mapping NHibernate Unit of Work Lazy Load pattern list orders when looking at specific customers MVC pattern 2nd benefit of combining Views/Controllers decoupling the Controller from the View Joe's Shoe Shop example simplifying view interfaces through adapters Notification, rules over-designing Query Object reasons for learning about patterns Registry, Inversion of Control Remote Facade reusability Separation Presentation Service Locator 2nd 3rd 4th Inversion of Control versus Dependency Injection Specification pattern 2nd complex rules generics queries State Template Method Unit of Work Patterns of Enterprise Application Architecture 2nd performance monitoring performance, databases Perrone, Claudio continuous integration unit tests PersistAll() 2nd Fake persistence APIs finding problems forgetting to check transitions incorrect transitions reconstituting entities from reflection against private fields specific constructors specific methods persistence abstraction making validation interfaces pluggable reactive validation on save reusing mapping metadata Persistence Ignorance (PI) 2nd avoiding certain constructs constructors cost for speed Domain Model implementing specific interfaces inheritance from a certain base class instantiating via a provided factory NHibernate providing mandatory specific fields Repositories cost for single-set Repositories Fake problems testing problems with small scale integration testing runtime versus compile time special datatypes persistence infrastructure requirements for storing data 2nd choosing file system object database RAM relational database resource managers persistent data, TDD problems PersistentObjectBase Pessimistic Offline Lock 2nd PI (Persistence Ignorance) 2nd avoiding certain construccts constructors cost for speed Domain Model implementing specific interfaces inheritance from a certain base class instantiating via a provided factory NHibernate providing mandatory specific fields Repositories cost for single-set Repositories Fake problems testing problems with small scale integration testing runtime versus compile time special datatypes PickAt() picking objects, unit testing example PicoContainer.NET, auto-wiring Pipes 2nd PL (Presentation Layer) Domain Model and placeholders, BO placeholders Plain Old CLR Object (POCO) Plain Old Java Object (POJO) Platform Specific Model (PSM) pluggable rules, Business Logic PM (Presentation Model) 2nd managing relationships mapping to Domain Model wrapping the Domain Model PM objects flattened PM objects O/O Mapping POCMock POCO (Plain Old CLR Object) PoEAA (Patterns of Enterprise Application Architecture) 2nd pointcut, AOP POJO (Plain Old Java Object) policy, services (SOA) POrderBuilder 2nd Presentation Layer (PL) Domain Model and Presentation Model (PM) 2nd managing relationships mapping to Domain Model wrapping the Domain Model presentation service Prevayler preventing growing problems Form Template Method Inline Singleton pricers principles for rules configurability location within state prevent you from getting into bad states productivity states testability two-way rules checking private fields, reflection problems avoiding with domain-related rules testing Repositories, PI with Domain Model, problems/features checking with credit institutes concurrency conflict detection customers may not owe more than a certain amount of list customers by applying flexible and complex filters list orders when looking at specific customers order may not have a total of more than one million orders and customers should have unique numbers orders must have customers, orderlines must have orders orders have acceptance status orders with many different lines saving orders processes waterfall process XP 2nd process objects productivity, principles for rules ProjectWrapper properties, public properties providing consumers with metadata Proxy PSM (Platform Specific Model) public fields public properties |