CompositionRoot

This is a sample code about how to use "Factory + Composition Root" pattern to

  1. make Business classes depend on only used dependencies.
  2. make Business classes depend on only interfaces, no concrete implementation.