花了7天上午的时间读完《大话设计模式》,随笔记录一下自己的收获
设计模式七大原则
1. 开闭原则
开放-封闭原则
大意:对于修改,我们应该封闭,对于扩展,我们应该开放。
当应用的需求改变时,在不修改软件的源代码前提下,可以扩展模块的功能,满足业务需求(低耦合)
2. 里氏替换原则
大意:子类可以扩展父类的功能,但不能改变父类原有的功能,也就是说子类在继承父类时,除了添加新的方法完成扩展以外,尽量不要重写父类的方法(低耦合)
3.依赖倒置原则
面向接口编程
大意:高层模块不应该依赖底层模块,他们都应该依赖抽象,抽象不应该依赖细节,细节应该依赖抽象(低耦合)
4. 单一职责原则
单一功能原则
大意:一个类应该有且仅有一个引起他变化的原因,否则类就应该被拆分(高内聚)
5.接口隔离原则
大意:程序员应该将臃肿庞大的接口拆分为更小和更具体的接口,让接口只包含客户感兴趣的方法(高内聚)
6.迪米特原则
大意:当两个类无需直接通信时,那么就不应该发生直接的相互调用,可以通过第三方转发该调用(低耦合)
合成复用原则
组合/聚合复用原则
大意:他要求在软件复用时,要尽量使用组合或者聚合等关联关系来实现,其次才考虑使用继承方法,如果要使用继承,必须严格遵守里氏代换原则,
因为继承会破坏类的封闭性,继承会将父类的实现细节暴露,同时子类父类耦合度高,不符合设计原理。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!