Stable and volatile dependencies

However, not always instantiating a dependency in the constructor leads to a Control Freak anti-pattern, it depends on the nature of the dependency, as explained in the following.

There are two types of dependencies: