Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.
General rules
Design rules
Understandability tips
Naming
Functions
Comments’ rules
Source code structure/formatting
Objects and data structures
Error Handling
Boundaries
Tests
Classes
Systems
Concurrency
Successive Refinement
Code Smells and Heuristics