OCP:开放封闭原则:对扩展开放,对修改封闭。如果类或者函数具有所需要的灵活性,就没有必要让它以不同的方式运行。比如,可以通过对函数传递不同的参数来让其运行不同的结果。

满足OCP,可以通过重构来实现,以多态来取代条件处理语句。

SRP:单一职责原则。类应该只有一个引起变化的原因。