架构师如何去进行软件设计 (设计原则篇)?
优秀的程序员应该不惧需求的变更。
软件设计七大原则
1、开闭原则(OCP) 对扩展开发 对修改关闭 就是在不影响原有功能的基础上进行扩展 实现方法:接口实现
2、依赖倒置原则(DIP) 抽象不依赖于细节,细节应该依赖抽象 实现方法:先抽象后细节 接口和抽象类
3、单一职责原则(SRP)一个类尽量承担一种职责 如果有多个职责可以通过接口拆分(一个类实现多个接口)
4、接口隔离原则(ISP)设计接口的时候需多个专门的接口,而不是单一的总接口
5、迪米特原则( LOD)一个对象应该对其他对象保持最少的了解,又叫最少知道原则 强调的是降低类与类之间的耦合
6、里氏替换原则(LSP)子类可以扩展父类的功能(意味着可以替换父类,并且原有逻辑不变),但是不能改变父类原有的功能 实现方法:继承
请用接口隔离原则优化Cache类的设计,画出优化后的类图
评论