实现方式 1
方式 1 存在的问题
开闭原则
什么是开闭原则
- 一个软件实体应当对
扩展开放
,对修改
关闭- 也就是说,我们在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展
- 应当可以在不必修改源代码的情况下改变这个模块的行为
优点
- 通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性和灵活性
- 已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有一定的稳定性和延续性
实现方式 2
简单工厂在源码中的应用