What are "High-level modules" and "low-level modules" (in the context of Dependency inversion principle)?

Viewed 5368
2 Answers

This is explained here: https://softwareengineering.stackexchange.com/a/419630

Low level modules are "low level" because they have no dependencies, or no relevant dependencies. Very often, they can be easily reused in different contexts without introducing any separate, formal interfaces - which means, reusing them is straightforward, simple and does not require any Dependency Inversion.

High level modules, however, are "high level", because they require other, lower level modules to work. But if they are tied to a specific low-level implementation, this often prevents to reuse them in a different context.

Related