Software development concepts. My github repo github.com/mistrykam
Programming can be broken into five parts:
An extreme programming practice that's states: "Always implement things when you actually need them,
never when you just foresee that you need them."
Adding code for future requirements that may or may not be requested will make the code more complicated, reduces
maintainability and may not correctly implement a future requirement. You also same time by not writing and unit testing
code that may not be required.
About the DRY practice
About the KISS practice
About the creating highly cohesive code
About reducing the dependency between classes and modules
About unit testing and integration testing
About Continuous Integration
About Create, Read, Update, Delete
About the SOLID principle
About Single Responsibility Principle
About Open/Closed Principle
About Liskov Substitution Principle
About Interface Segregation Principle
About Dependency Inversion
About Domain Driven Design
About Command Query Responsibility Segregation: split that conceptual model into separate models for queries (get request) and command (change request).