Defensive programming is about details, such as refactoring loops, avoiding unsafe code, adhering to CLS, and using parentheses.
Leave the warning level at 4, which is the highest. If possible, compile with the Treat Warnings As Errors option.
Code reviews are an important challenge to the correctness of the code base.
Strive for code coverage of 85 to 90 percent during testing. For test-driven development, the goal is 100 percent coverage.
With test-driven development, create the test and then the code that passes the test. When the test passes, you then refactor the code.
Self documenting code is more readable. Abiding by proper naming conventions and pseudo-code also improves code readability.
Comments, comments, and more comments. Documentation comments provide consistency and can be exported to an XML documentation file.
Design patterns are reusable patterns excavated from the universal code base. Design patterns are documented, reusable, and perfected solutions to common programming problems. There is no need to re-create a solution to a known problem, and possibly introduce issues, when you can rely on a design pattern.