Difference between a Factory, Provider and a Service?

OopDesign PatternsRepository Pattern

Oop Problem Overview


What is the difference between the terms Factory, Provider and Service?

Just getting into NHibernate and its Repository pattern (POCO classes, etc).

Oop Solutions


Solution 1 - Oop

Factory: Assembles classes, either by composing a bunch of bits together, or choosing type based on some kind of context

Provider: Provider is something microsoft "invented" (basically an abstract factory pattern) that is a way of doing a factory of factories, or having a common factory interface which allows factories to be swappable. It is used all over in the MS web stack as a way to keep components configurable.

Service: A service is a group of related functionality. Think of it as if you are splitting your architecture horizontally, you have a "Business Logic" layer, if you split that vertically you will have services.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionmrblahView Question on Stackoverflow
Solution 1 - OopMatt BriggsView Answer on Stackoverflow