---
title: Không để code chết trong codebase
impact: LOW
impactDescription: Code không dùng làm tăng kích thước binary, gây nhầm lẫn khi đọc và bảo trì, khiến reviewer tốn thời gian.
tags: swift, ios, dead-code, cleanup, code-quality
---

## Không để code chết trong codebase

Code không còn được gọi đến, biến không sử dụng, hàm private không được gọi, hay `#if false` block cần được xóa. Dùng Git history nếu cần khôi phục.

**Incorrect (code chết):**

```swift
class OrderViewController: UIViewController {

    // Không bao giờ được dùng
    private func legacyFetchOrders() {
        // TODO: remove this
    }

    #if false
    private func debugHelper() {
        print("Debug info: \(someVar)")
    }
    #endif

    // Biến khai báo nhưng không dùng
    private let unusedFormatter = DateFormatter()

    override func viewDidLoad() {
        super.viewDidLoad()
        loadOrders()
    }

    private func loadOrders() { ... }
}
```

**Correct (chỉ giữ code đang được dùng):**

```swift
class OrderViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        loadOrders()
    }

    private func loadOrders() { ... }
}
```

**Tools:** SwiftLint (`unused_private_declaration`), Xcode Warnings, SwiftFormat (`unusedPrivateDeclarations`)

