Look at the patterns and principles that help improve your application code, see how dependency injection fits in, and how easy tests are just a side effect of your clean architecture.