SOLID Principles

Single responsibility through dependency inversion

Single responsibility through dependency inversion