Dependency injection

A component should receive its dependencies from the outside, not construct them internally:

  • Pass services via constructor/initializer parameters or protocol properties
  • Never instantiate a concrete service inside the component that uses it
  • Use protocol/interface types for dependencies, not concrete types
  • Avoid service locator pattern (hidden global lookup)
version
1.0.0
tags
dependency-injection
author
Mike Fullerton
modified
2026-03-27

Change History

Version Date Author Summary
1.0.0 2026-03-27 Mike Fullerton Initial creation