- If you use a service you will get the instance of a function ("this"
keyword).
- If you use a factory you will get the value that is
returned by invoking the function reference (the return statement in
factory)
Factory and Service are the most commonly used recipes. The only difference between them is that Service recipe works better for objects of custom type, while Factory can produce JavaScript primitives and functions.
Reference