软件架构设计原则
第一章 软件架构设计原则
开闭原则
- 对扩展开放,对修改关闭,强调用抽象构建框架,用实现扩展细节
举例:
依赖倒置原则
- 高层模块不应该依赖低层模块,两者都因依赖抽象
举例:
单一职责原则
- 一个类不要存在多个导致其改变的原因,需求发生变更时,修改其中一个职责的代码就有可能导致另一个职责的功能发生故障
接口隔离原则
- 用多个专门的接口,而不是使用单一的总接口
设计接口时需要注意:
- 一个类对另一个类的依赖应建立在最小的接口之上
- 建立单一的接口,不要建立庞大臃肿的接口
- 尽量细化接口,接口中的方法尽量少
迪米特原则
也叫最少知道原则,尽量降低类与类之间的耦合度。
- 只和朋友交流,不和陌生人说话
里氏替换原则
- 一个软件实体使用于其父类,那么也一定适用于其子类
也就是说子类可以扩展父类的功能但是不能改变父类原有的功能
- 子类可以实现父类的抽象方法,但是不能覆盖父类的非抽象方法
- 子类可以增加自己特有的方法
- 子类的方法重载父类的方法时,方法的 入参 要更加宽松
- 子类的方法重载父类的方法时,方法的 返回 要比父类更加严格或和父类一样
合成复用原则
- 尽量使用对象组合/聚合而不是继承关系达到软件复用的目的,可以使系统灵活降低耦合度
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Warms!