第二周 - 学习总结

用户头像
Geek_0b0f83
关注
发布于: 1 小时前

浅谈对几个设计原则的理解

开闭原则:对扩展开放,对修改封闭,实现开闭原则和核心在于合适的抽象,以及依赖接口,不依赖具体实现类,相关设计模式,策略模式,适配器模式,观察者模式



依赖倒置原则:高层不依赖低层,低层也不依赖高层,大家都依赖一个抽象,这个抽象属于高层,框架设计的核心原则,Spring的喝多扩展接口就使用了依赖倒置原则,例如BeanPostProcessor,违反依赖倒置原则会引起的问题,1、高层与低层无法并行开发,2、增加模块之间的耦合



里氏替换原则:主要应用在子类继承父类的场景中,判断代码是否符合里氏替换原则,有两个方面,1、子类与父类之间是否满足is-a,2、使用父类的地方是否都可以使用子类。再谈一下继承,继承可以很方便的让子类拥有很多功能,不需要再编写一次代码,但是也会带来一些问题,例如破坏了父类的封装性,将父类中的方法暴露给了子类,另外得继承父类的所有方法,其中有一部分实际上子类并不会用到,父类修改的时候会影响到子类,增加耦合性,优先使用组合来代替继承



单一职责原则:一个类只有一个引起它变化的原因,符合单一职责原则的类,代码量通常比较少,违反单一职责原则会带来的问题,1、增加耦合性,违反高内聚,低耦合,2、影响类的变化的因素会增加



接口隔离原则:客户端不应该被强迫实现不需要的方法,需要将一个胖接口中的方法分组,拆分成多个接口,违反接口隔离原则会带来的问题:1、编程过程中可能调用错误的方法,2、功能也不容易复用



用户头像

Geek_0b0f83

关注

还未添加个人签名 2020.07.28 加入

还未添加个人简介

评论

发布
暂无评论
第二周-学习总结