简单工厂模式:计算器类
这篇讲的是如何用计算器这个经典例子,把简单工厂模式讲明白。作者从实现一个支持加减乘除的计算器出发,展示了如何用一个工厂类根据用户输入的运算符,来创建并返回对应的运算对象。 文章的核心是剖析这个工厂类的结构:它把对象创建的逻辑集中起来,让客户端(计算器界面)只需要告诉工厂“要什么运算”,而不用关心具体类怎么实例化。这种解耦让新增运算(比如取余)变得简单——只需扩展运算类和修改工厂方法,而不必改动客户端代码。 值得注意的是,作者也点明了简单工厂模式的局限性:当运算类型非常多时,工厂方法会膨胀成一个臃肿的条件判断集合。这时,工厂方法模式或抽象工厂模式可能是更清晰的选择。文章最后用计算器的场景收尾,帮你理解在什么规模下用这个模式最合适。