架构师训练营第二周心得
本周学习了软件设计的一些基本原则
开闭原则
对象行为的变更只能基于扩展而不是修改源代码。
依赖倒置原则
依赖倒置指的是高层次的模块不应该依赖于低层次的模块,大家依赖于抽象。将抽象置于高层模块,低层模块按照高层接口约束完成实现,而不是低层模块抽象出接口供高层模块调用。
里氏替换原则
有一个类似数学的严格定义方法,当所有的子类均能替换父类而程序运行没有出错的情况下,我们认为这种类继承是满足里氏替换原则的,是优秀的继承。里氏替换的检查并不能在静态发现,需要结合运行时的场景。并且由此可以推导出,组合优于继承的概念,代码重用应当多考虑采用组合的方式,而不是简单的使用继承。
单一职责原则和接口隔离原则
一个类尽可能的只负责一个单一的功能,复杂功能则需要考虑使用组合,设计模式等方法把功能规划清楚。 当一个类实体已经承载了比较多的功能时候,需要接口隔离来对不同的客户端暴露不同的方法。
评论