Table of Contents
- Technical Debt, Code Smells, and Refactoring
- Introduction to Refactoring
- Method-Level Refactorings
- Class-Level Refactorings
- Code-Level Refactorings
- Unit Testing
- Test Driven Development
- Avoiding Code Anti-Patterns with SOLID
- Advanced Unit Testing
- Defensive Coding Techniques
- AI-Assisted Refactoring with GitHub Copilot
- Code Analysis in Visual Studio
- Creating a Roslyn Analyzer
- Refactoring Code with Roslyn Analyzers
- Communicating Technical Debt
- Adopting Code Standards
- Agile Refactoring

