https://medium.com/@thepushp2/the-interrelation-of-solid-principles-how-they-work-together-72eca222db94