五大设计原则:
S :做什么事都要分开,小(简)即是美;
一个程序只做一件事;如果功能过于复杂就要拆分开;
O :open and close ,对扩展开放,对修改封闭 !important;
增加需求时,扩展新代码,而不是修改原代码;渐进增强;
L :父类可以出现的地方,子类也能出现;
子类能够覆盖父类;父类能出现的地方,子类就能出现;
I : 针对接口,接口独立唯一
保持接口的单一独立,避免出现“胖接口”;类似于单一职责原则,但针对于接口,更具体;
D :面向抽象编程,依赖于接口,而不是依赖于具体的实现;
使用方只关注接口,而不关注具体类的实现;