What is dependency injection and how does it facilitate testing?
Dependency Injection (DI) is a design pattern where dependencies are provided rather than
created inside a class. DI makes testing easier by allowing tests to inject mock or fake
implementations of dependencies, isolating the unit under test.