面向对象(Object Oriented - OO)
设计原则(Design Principle)
概述
设计原则是在进行软件系统设计时,为避免某些经常出现的设计缺陷,所要遵循的一些经验准则
3大设计目标
、可扩展性:有了新的需求,可以很容易添加到系统中,不影响现有的性能,也不会带来新的缺陷
、可修改性:系统一部分代码要修改时,不会破坏系统的现有结构,也不会影响到其它的部分
、可替换性:可以将系统中的某些代码替换为相同接口的其它类,不会影响到系统
5大设计原则(SOLID)
、单一职责原则(SRP):一个类应该只有一个发生变化的原因,否则应该被拆分
、开放封闭原则(OCP):软件实体应该对扩展开放,对修改关闭。是设计原则的核心
、里氏替换原则(LSP):子类可以扩展父类的功能,但不能改变父类原有的功能。是对子类型的特别定义
、接口隔离原则(ISP):客户端不应该依赖它不需要的接口。一个类对另一个类的依赖应该建立在最小的接口上
、依赖倒置原则(DIP):程序要依赖于抽象接口,不要依赖于具体实现。简单说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合