---
title: Keep methods under 10 lines
impact: MEDIUM
impactDescription: Improve code readability and maintainability.
tags: ruby, quality, metrics, readability
---

## Keep methods under 10 lines

Improve code readability and maintainability. Limit methods to 10 lines of code (excluding blank lines and comments). Extract complex logic into smaller, well-named private methods.

**Incorrect (Too long):**

```ruby
def process_order(order)
  validate_order(order)
  apply_discount(order)
  notify_user(order)
  update_inventory(order)
  generate_invoice(order)
  archive_order(order)
  # ... many more lines
end
```

**Correct:**

```ruby
def process_order(order)
  prepare_order(order)
  finalize_order(order)
end

private

def prepare_order(order)
  # sub-logic < 10 lines
end
```

**Tools:** RuboCop (`Metrics/MethodLength`)
