In the AngularJS documentation, there is an explanation of the differences between a factory, a service, a value, a constant and a provider .
At the end, we have a compa
My interpretation of "type friendly injection":
Factories and Providers inject whatever is returned by the factory function and $get function respectively, which could be of any type and could potentially change dynamically at runtime. Whereas Service, Constant and Value injections are of a fixed type that Angular is aware of as it is well defined during the definition of the recipe. Hence they are type friendly injections.