---
title: Do Not Use Dead Code
impact: LOW
impactDescription: reduces codebase noise and reduces cognitive load
tags: dead-code, cleanup, maintenance, quality, kotlin
---

## Do Not Use Dead Code

Dead code confuses readers and makes maintenance harder. Git history preserves deleted code, so there is no need to keep it in the active codebase as comments or unused functions.

**Incorrect (keeping dead code):**

```kotlin
fun processOrder(order: Order): Double {
    // Old implementation - keeping for reference
    // val total = order.items.sumOf { it.price * it.quantity }
    
    val total = calculateTotal(order)
    return total
}

// Unused function - someone might need it later
fun legacyCalculation() { }

import com.sun.utils.unusedHelper  // Never used
```

**Correct (clean code):**

```kotlin
fun processOrder(order: Order): Double {
    val total = calculateTotal(order)
    return total
}

// Delete unused functions - git history preserves them
// Delete commented code - git history preserves it
// Remove unused imports
```

**Types of dead code:**
- Commented-out code
- Unused functions/classes/properties
- Unused imports
- Unreachable code
- Unused local variables

**Tools:** detekt (UnusedPrivateMember, UnusedPrivateClass), Android Studio Linter, IntelliJ IDEA
