MetaCredo.Check.Design.HighCoupling (MetaCredo v0.1.0)

View Source

Detects modules with too many external dependencies (imports/aliases). High efferent coupling makes modules difficult to test, maintain, and reason about. Consider applying dependency inversion or splitting the module.

Assessment:

  • < 5 dependencies: Excellent
  • 5-9: Good, monitor growth
  • 10-19: Fair, consider refactoring
  • 20+: Poor, major refactoring needed

Category: Software Design / Priority: high

Configuration

Accepts the following parameters via .metacredo.exs:

  • max_dependencies - Maximum allowed external dependencies (default: 10) (default: 10)