SuperAPI AI 工具集

open-closed-principle

通用与其它

查看项目

更新于 10-16 03:35

技能介绍

用途:指导在新增功能时遵循开闭原则——软件实体应对扩展开放、对修改关闭。当需要新增支付方式、通知渠道、导出格式、折扣类型等变体,或受到诱惑要再加一个 if/else、switch 分支时使用;也适用于重构已有的分支链。

主要能力:提供判断标准与检测方法。核心规则是绝不给现有 if/else 或 switch 追加分支,无论理由是“只是多一个 case”“以后再重构”“模式已经这样了”还是“这样更快”。典型违规信号是给已有条件加 else if、给 switch 加 case、重复已有的 if/else 结构,或方法中基于类型的分支超过 3 个。

使用方式:用策略/插件模式替代修改。先定义接口(如 PaymentMethod 的 process),为每个新变体单独实现类(如 CreditCardPayment、PayPalPayment),再通过处理器注册或注入,使处理器本身在新增方式时无需改动。遇到已有分支链时“触碰到就重构”:抽取接口、把分支转成实现、加入新实现。文档列出了常见压力场景的应对,包括“只加一个 case”“模式已存在”“以后再重构”等,并强调仅写注释表示“应该重构”而仍加分支仍属违规。

适用场景:支付、通知、导出、折扣等多变体扩展场景。

限制:资料未提供安装命令、平台信息、收费或价格。内容为实现原则与模式建议,非可直接运行的工具,具体语言与框架适配需自行判断。