====== Design Patterns ====== ===== Common Patterns ===== * [[DAO]] - Data Access Object. Objects which handle storage of data e.g. in a database * [[TemplatePattern|Template]] - Dividing interface from implementation \\ \\ \\ * [[Separation Of Concerns]] A design pattern usually consists of: * **a name** - the identifier for the pattern. Any aliases must also be listed. \\ * **a goal** - what the pattern aims to achieve (sometimes described as forces) \\ * **the description** - describes how the pattern works \\ * **the implementation** - making the pattern work in practice \\ * **cases** - successful applications of the pattern ===== The Description ===== Consists of: * **participants** - the objects that interact [[Cross Cutting Concern]] [[http://java.sun.com/developer/technicalArticles/J2EE/patterns/]]