I wonder from time to time whether I'm doing the right thing with respect to guidelines and principles when using an object-oriented approach to create an application. I started reading the Object Design Style Guide book last year to learn more about objects. And beginning this year, I decided to delve deeper into writing code that is readable, maintainable, and testable as well as how to prepare codebase to embrace future changes.
Here are the resources used:
- Object Design Style Guide.
- Principles of Package Design.
- Writing Readable and Maintainable Code
- SOLID Software Design Principles
- Abstract Art: Getting Things "Just Right"
- Getting Started with Dependency Injection
- Writing Testable Code
- Refactoring: Best Practices
The notes taking while exploring these concepts can be found on this gist