This repository is a collection of demos for the "Fun with Interfaces, episode 2: Patterns" live blog on http://vjeko.live/
This is what each branch is (or does):
demo-01
: Shows a typical business example of a tightly-bound functionalitydemo-02
: Adds an additional type of dependency to introduce the necessity of even discussing dependency injectiondemo-03
: Introduces interfaces. This branch compiles, but fails at runtime. It's purpose is merely to introduce the interfaces, not to implement them yet.demo-04
: Uses enums to invert dependency controldemo-05
: Uses dependency injection to invert dependency controldemo-06
: Decoupling more dependencies using injectiondemo-07
: Introducing factory patterndemo-08
: Proposing discovery factory pattern