模板方法模式练习

模板方法模式练习——饮料、数据读取与报告生成

按《Python 设计模式——模板方法模式》的建议,通过三道练习巩固:① 饮料冲泡流程(茶/咖啡);② 数据读取流程(打开→读→关闭);③ 报告生成流程(标题→正文→结尾)。每步都有完整可运行代码和验证要点。


练习一:饮料冲泡(茶与咖啡)

目的

体会模板方法在父类里固定流程(烧水→冲泡→倒杯→加调料),抽象步骤由子类实现(冲泡、加调料);子类不重写流程,只填“自己那几步”。

要求

  • 定义抽象类 Beverage,包含:
    • prepare()(模板方法):依次调用 boil_water()brew()pour_in_cup()add_condiments()
    • boil_water()pour_in_cup() 为普通方法,内部只 print 一句话;
    • brew()add_condiments()抽象方法
  • 实现 Tea:brew 打印“泡茶叶”,add_condiments 打印“加柠檬”。
  • 实现 Coffee:brew 打印“冲咖啡粉”,add_condiments 打印“加奶和糖”。
  • 客户代码:分别调用 Tea().prepare()Coffee().prepare(),验证输出顺序一致且步骤内容符合茶/咖啡。

发表评论