What the heck is a domain object?

I would be reading a tutorial and all of sudden the author mentions “domain object”.

What the heck is a domain object? 

"Domain objects form the backbone of any application. They capture the core data model from the database and also the business rules that apply to this data. It is very typical for most subsystems of an application to rely on these common domain objects. This means that the closer the domain objects map to the data model in the database, the easier it is for the application developers to understand and use them because they mimic real-life "entities" and "relationships" as represented in the database.

If domain objects are not separated from the rest of the application, we end up with duplication of code everywhere. Similarly, if domain objects are not separated from the persistence code, we face situations where any subsystem using the domain objects also knows and depends on the persistence objects. And, any change in persistence objects affects the entire application, hence a bad design."
http://www.alachisoft.com/resources/articles/dop.html or
http://www.codeproject.com/KB/architecture/DomainObjects.aspx.

There are so much copy and paste (plagiarism) out there,  it is really hard to tell who originally wrote the article. Whoever you are thanks since that’s the best one I could find.

Reference

Domain objects vs Business Objects
http://www.alachisoft.com/resources/articles/dop.html

More objects domain definitions
http://www.codeproject.com/KB/architecture/DomainObjects.aspx

Let's share thisShare on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn