一、开闭原则
概述:这主要是指任何一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭。通俗一点来说就是指一个模块应当是易于扩展的,而这种扩展并不会引起对模块源代码的修改。
应用:Abstract Factory
二、依存关系倒置原则
概述:高层模块不应依赖底层模块,而是应该依赖抽象;抽象不应依赖具体实现(i.e.细节),具体实现应该依赖抽象
应用:当需要进行类派生时,应优先考虑从系统中现有的抽象类或接口派生,其原因在于对具体类的改变往往比对抽象类或接口的更改来得更为频繁。因此我们应该依赖抽象而不是依赖具体实现。
三、单一职责原则(也称为接口分离原则)
概述:每个类都应当只有一个改变的原因
应用:不要一个类完成所有的事情,特别是不要在一个类中同时包括UI以及业务逻辑、数据逻辑。
四、替换原则
概述:子类应该能够代替父类出现在任何父类能够出现的地方。