依赖反转原理:高级别和低级别模块示例
问题描述:
我正在浏览以下link以了解高级别和低级别模块在依赖反转原则中的含义。依赖反转原理:高级别和低级别模块示例
按照给出的解释,下面的代码片段是一个很好的/合适的例子吗?
public class HighLevel
{
private IAbstraction _abstraction;
public HighLevel(IAbstraction abstraction)
{
_abstraction = abstraction;
}
public void Act()
{
_abstraction.DoSomething();
}
}
public interface IAbstraction
{
void DoSomething();
}
public class LowLevel: IAbstraction
{
public void DoSomething()
{
//Do something
}
}
答
使一个长期的答案很短:是的,这是一个依赖倒置原则
为例