HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
Open Source .NET eXchange: Mike Hadlow on Implementing the Repository Pattern
Implementing the Repository Pattern
Mike Hadlow starts his talk by summarising the evolution of data access from the early days of using RDO and DAO with Visual Basic, which did not provide a lot of control over the database, to contemporary domain driven approaches. He goes on explaining the different meanings people tend to give to the term “Repository”.
He explains that, the Repository pattern is important for providing dependency-free access to data of any type. Repositories are responsible for persisting entities and value types. The core purpose of the repository is to encapsulate persistence. “The client should appear to be simply using an entity collection and all the details of object relational mapping and specific data access APIs should be hidden behind that collection like interface”.
Mike goes on with his thoughts on some questions like: Should we return IQuaryable objects from our repositories? Should repositories control transactions and who should consume the repositories?

More information, Mike Hadlow's Blog
You can download the slides here

ABOUT MIKE HADLOW
Mike Hadlow is a freelance programmer based in Brighton, specialising in enterprise application development with Microsoft tools. Mike is the author of several open source projects including WsdlWorks, a web service test tool and Suteki Shop, an MVC
More about Mike Hadlow
PODCAST IMPLEMENTING THE REPOSITORY PATTERN

This session took part at the Open Source .NET eXchange. You can view the other 7 podcasts here.
SPONSORS
Methods & Tools
Manning Publications Co.
Neuri Ltd
OpenSource.NET eXchange
JAVASCRIPT & HTML5 PODCASTS
Christophe Coenraets:Cross-Platform Mobile Apps with HTML, JavaScript and PhoneGap, Cross-Platform Mobile Apps
Christophe Coenraets : 24th May 2012
View Podcast: Cross-Platform Mobile Apps with HTML, JavaScript and PhoneGap,
Paul Ardeleanu:Native vs HTML5 - why, when and how to use them, Native vs HTML5
Paul Ardeleanu : 22nd May 2012
View Podcast: Native vs HTML5 - why, when and how to use them,
Luke Daley: Managing JavaScript with Gradle, JavaScript with Gradle
Luke Daley : 22nd May 2012
View Podcast:  Managing JavaScript with Gradle,
Elise   Huard:Ruby’s bin men: a closer look at the garbage collector, Ruby’s bin men: a closer look at the gar
Elise Huard : 14th May 2012
View Podcast: Ruby’s bin men: a closer look at the garbage collector,
Tom Stuart:Dependency Injection, the Dependency Inversion Principle, and You, Dependency Injection
Tom Stuart : 14th May 2012
View Podcast: Dependency Injection, the Dependency Inversion Principle, and You,
Tom McMillen:CouchDB at the Hut Group, CouchDB at the Hut Group
Tom McMillen : 9th May 2012
View Podcast: CouchDB at the Hut Group,
John Zablocki:The Couchbase Server Tutorial, The Couchbase Server Tutorial
John Zablocki : 9th May 2012
View Podcast: The Couchbase Server Tutorial,
Peter Martischka:Etherpad Lite: Make Collaborative Editing the Standard on the Web, Etherpad Lite
Peter Martischka : 8th May 2012
View Podcast: Etherpad Lite: Make Collaborative Editing the Standard on the Web,
Tiago Rodriguez:Continuously integrated JS development with Buster.js and Phantom.js, Buster.js and Phantom.js
Tiago Rodriguez : 8th May 2012
View Podcast: Continuously integrated JS development with Buster.js and Phantom.js,
Gavin  Bell:Is Everything Social?, Is Everything Social?
Gavin Bell : 8th May 2012
View Podcast: Is Everything Social?,
Brian Sletten:Information Resources : Moving Beyond Objects, Moving Beyond Objects
Brian Sletten : 3rd May 2012
View Podcast: Information Resources : Moving Beyond Objects,
Brian Sletten:Information Resources: Moving Beyond Objects (Part 2), Moving Beyond Objects
Brian Sletten : 3rd May 2012
View Podcast: Information Resources: Moving Beyond Objects (Part 2),
Brian Sletten:Testing REST with BDD, REST & BDD
Brian Sletten : 2nd May 2012
View Podcast: Testing REST with BDD,
Dmitry Buzdin:State of the Web, State of the Web
Dmitry Buzdin : 1st May 2012
View Podcast: State of the Web,
Lukas  Oberhuber:Lightning Talks: Simply Business, Simply Business
Lukas Oberhuber : 23rd Apr 2012
View Podcast: Lightning Talks: Simply Business,
OTHER JAVASCRIPT & HTML5 EVENTS
Progressive .NET Tutorials 2012, Progressive .NET Tutorials 2012
CONFERENCE (3 DAYS)
London, Tuesday, May 29th BOOK NOW!
Dutch Mobile Conference, Dutch Mobile Conference
CONFERENCE (3 DAYS)
Amsterdam , Thursday, June 7th BOOK NOW!
London Ruby User Group:ElasticSearch, London Ruby User Group
FREE EVENT: ElasticSearch
, Monday, June 11th
Gavin  Bell:Gavin Bell's Creating Social Applications,  Gavin Bell's Social Applications
2 DAY COURSE. Featuring Gavin Bell
London, Thursday, June 14th
QCon New York 2012, QCon New York 2012
CONFERENCE (3 DAYS)
New York, Monday, June 18th BOOK NOW!
:Typesafe's Fast Track to Play,  Typesafe's Fast Track to Play
1 DAY COURSE.
London, Friday, June 22nd
Damjan Vujnovic:Damjan Vujnovic's Advanced JavaScript Workshop,  Damjan Vujnovic's Advanced JavaScript Workshop
2 DAY COURSE. Featuring Damjan Vujnovic
London, Monday, June 25th
Find Your Ninja Project:Cool Projects in June , Find Your Ninja Project
FREE EVENT: Cool Projects in June
London, Monday, June 25th
© Copyright 2003-2011, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Speed Coding 2011  Open Source Journal  Ticket Raffle  Agile Expert Series  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship