Tanım:
Bir yazılımda, nesne yaratma ve buna benzer akış kontrolünün , programcıya veya yazılım bölümüne değil, çalışılan ortama, framework'e veya genel bir kütüphaneye bırakılması şeklindeki yöntem. Bu yöntem, nesnelerin birbirine bağımlılığını azaltmakta ve daha modüler kodların yazılması sağlamaktadır