CompositionRoot This is a sample code about how to use "Factory + Composition Root" pattern to make Business classes depend on only used dependencies. make Business classes depend on only interfaces, no concrete implementation.