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