浙江省火电建设公司网站,合肥网红,建筑工程网上申报,wordpress语音本文仅作学习笔记与交流#xff0c;不作任何商业用途#xff0c;作者能力有限#xff0c;如有不足还请斧正 本系列作为七大原则和设计模式的进阶知识#xff0c;看不懂没关系 请看专栏#xff1a;http://t.csdnimg.cn/mIitr#xff0c;查漏补缺 1.依赖倒置原则 (DIP)
这… 本文仅作学习笔记与交流不作任何商业用途作者能力有限如有不足还请斧正 本系列作为七大原则和设计模式的进阶知识看不懂没关系 请看专栏http://t.csdnimg.cn/mIitr查漏补缺 1.依赖倒置原则 (DIP)
这个原则的核心思想是高层模块不应该依赖于低层模块二者都应该依赖于抽象具体来说依赖倒置原则建议我们通过依赖抽象如接口或抽象类而不是具体实现来降低模块之间的耦合度
什么叫依赖 依赖可以理解为耦合就是两个类之间有互相套用的关系 举个不恰当的栗子
我有一台电脑键盘模块和鼠标模块会互相影响 比如我按WASD就会让浏览器中的鼠标发生移动理论上来说这种操作是可行的
问题来了那我该怎么打字所以该种情况就显然不符合依赖倒置原则 这样子影响显示不太合适那么就应该依据依赖倒置原则 (DIP)用接口或者抽象类去继承实现一个抽象层-------输入接口
修改后 public interface InputInterface{protected void Click();protected void Move();protected void Input();}
public class Mouse : InputInterface {void InputInterface.Click() {}void InputInterface.Input() {}void InputInterface.Move() {}
}public class Keyboard : InputInterface {void InputInterface.Click() {}void InputInterface.Input() {}void InputInterface.Move() {}
}
这个接口还可以用 接口隔离原则将键盘鼠标的不同行为分离开来C# Unity 面向对象补全计划 七大原则 之 接口隔离原则 (ISP) 难度☆ 总结大接口分成小的然后该干啥干啥-CSDN博客
我就不过多赘述了