SOLID TDD
Software developers generally don’t write poor, unmaintainable code out of any malicious or deliberate intent. They do it because software development is complex and there is not enough feedback in the process to ensure they adhere to good SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion) object …