架构师训练营第 1 期 week2 总结
本周主要学习了架构设计,主要是关于架构设计的几个原则,内容如下:
开闭原则:对扩展开放,对修改关闭;
依赖倒置原则:面向抽象或接口开发,接口由高层模块定义;
里氏替换原则:任何父类接口能完成的功能,替换子类也能完成;
单一职责:尽量做到类只有一个行为原因引起变化;
接口隔离原则:不强迫子类实现其不需要的方法,可以将方法分组,通过多继承来实现;
总的来说,这些原则以前其实也知道,但是日常开发的时候总是想着怎么完成功能,很少站在架构师的角度去想怎么做能使得代码更加优雅,更加易于维护。现在想想,有很多项目,其实都可以进行优化的,比如原先做了一个通用的评估系统,其中有一块功能是基础数据采集,需要支持mysql普通表结构的数据提取、mysql中JSON格式数据的提取、mongodb以及后续会支持多种不同的数据库数据的提取,完全可以定义一个数据抽取的接口,由不同的数据库去实现,高层模块只需要调用接口就行了,不用关心低层模块怎么实现,而如果新增不同的数据库,只需要新增子类即可。类似的例子有很多,以后需要多多努力,有时间可以尝试优化一下以前的代码,学到的知识要多多练习。
评论