IOC(控制反转)和DI(依赖注入)是一种提供松散耦合的设计模式。它从程序中删除了依赖项。
让我们在不遵循 IOC 和 DI 的情况下编写代码。
public class Employee{
Address address;
Employee(){
address=new Address();//creating instance
}
}
现在,Employee 和 Address 之间存在依赖关系,因为 Employee 被迫使用相同的地址实例。
让我们编写 IOC 或 DI 代码。
public class Employee{
Address address;
Employee(Address address){
this.address=address;//not creating instance
}
}
现在,Employee 和 Address 之间没有依赖关系,因为 Employee 没有被强制使用相同的地址实例。它可以使用任何地址实例。