SOLID principles explained | Java | System Design Interview