Active Record vs. Repository

I was reading an blog entry by Ayende Rahien (aka Oren Eini) again, “Entities, Services and what goes between them…” and one of his commenters asked the following question:


  re: Entities, Services and what goes between them… 2/27/2007 6:44 PM Gustavo Cores

@Ayende & @Hammet
But doesn’t all this entities not talking to repositories go against the Castle project philosophy (ActiveRecord) which you are part of?
Because following the AR model
Order.FindByCustomerAndCity(…) would make sense

He answered:

@Gustavo,
Yes, what I am talking about contradict the Active Record model.
In general, I _really_ like the way AR can infer everything for me, and take away much of boring details of working with NHibernate.
That said, my personal belief is that a repository driven approach is a more flexible way to handle the issue.
I keep the power of AR, but I can now operate at much greater flexibility, see my article on MSDN to see some of the things that I can do with repositories.

Oren defends his stance further with the following blog entry: “What should I use, NHiberante or Active Record?!

I plan on trying out both mechanisms and, like Oren, decide what’s more important: speed or clean domain objects and testability.

I’ll keep you posted.

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Jason Meridth

Continuously learning software developer trying to not let best be the enemy of better
This entry was posted in Programming. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

Comments are closed.