I am looking for some architectual design patterns for enterprise application development. I am aware of the all of the GoF patterns, and MVC, and such things, but I am looking for patterns that emerge at a larger scope. In particular I have a somewhat larger enterprise desktop and website application, they share certain functionality, and some is unique, and I am looking for best practices on how to structure the entire solution, how to expose business logic domains to others via factories, or such, and generally things of this nature that deal with the entire application as a whole.
+4
A:
Take a look at Jeffrey Palermo's Onion Architecture. This architecture places the Core (Domain Model, Domain Services, Application Services) of your application at the center. The Core does not reference anything else, and everything else does reference the core. Persistence is a layer on top of the core, as is the UI, as are tests.
Justice
2008-10-16 18:14:25
Looks interesting.
Maxim
2008-10-16 18:17:23
+4
A:
Martin Fowler has Patterns of Enterprise Application Architecture.
tvanfosson
2008-10-16 18:17:11
To each his own. I haven't done more than look at the PEAA book, but I think the refactoring work is excellent.
tvanfosson
2008-10-16 18:26:21
+2
A:
I would suggest Eric Evans' Domain Driven Design - particularly sections 3 & 4.
johnstok
2008-10-16 18:25:18