Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Architecture Pardigm Shift

Status
Not open for further replies.

jmeckley

Programmer
Jul 15, 2002
5,269
US
jeffrey palermo has started a great series on what he dubs the Onion Architecture
part 1
part 2
I love that someone was able to put this into words which can be digestable to the masses.
I found the most meanful nugget is the idea that a database is an infrastructure detail; not part of the core. This is also something I am trying to unlearn with each project. it's been a year and still difficult to avoid.

Jason Meckley
Programmer
Specialty Bakers, Inc.
 
I found the most meanful nugget is the idea that a database is an infrastructure detail; not part of the core. This is also something I am trying to unlearn with each project. it's been a year and still difficult to avoid.

Stop calling it a database. Call it "output" or "storage". Now, you would give it a completely different interface, wouldn't you?

My "answer" to storage came from a hunch that dependency injection would help to reduce coupling to a huge unclear framework (see After working it out, I had a nice little framework that handled "storage" instead of a database.

+++ Despite being wrong in every important aspect, that is a very good analogy +++
Hex (in Darwin's Watch)
 
how I access the data isn't the problem. I have repositories and ORMs for that. My bad habit is modeling the domain to the database schema rather than modeling the domain to the business requirments and letting the orm handle db mapping.

Jason Meckley
Programmer
Specialty Bakers, Inc.
 
To see working (probably - haven't compiled it yet) code, you can get a copy of the CodeCamp project from google:
Code:
svn checkout [URL unfurl="true"]http://codecampserver.googlecode.com/svn/trunk/[/URL] codecampserver-read-only
You'll need Subversion installed.

Chip H.


____________________________________________________________________
www.chipholland.com
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top