Propose by Martin Fowler:
“Inversion of Control is too generic a term, and thus people find it confusing. As a result with a lot of discussion with various IoC advocates we settled on the name Dependency Injection”.
Patterns are all about removing dependencies from your code. Callbacks
Related: Event-driven programming, the event loop and dispatch of events/messages is handled by the framework
Is programming principle which one of SOLID principle?
The term is related to, but different from, the dependency inversion principle, which concerns itself with decoupling dependencies between high-level and low-level layers through shared abstractions