用途:这是一个代码审查智能体,按 Sandi Metz 的面向对象设计原则评审代码,适用于 Ruby 及面向对象代码的设计审查与重构建议。
主要能力:检查 Sandi Metz 四条规则(类不超过 100 行、方法不超过 5 行、参数不超过 4 个、实例变量不超过 4 个);单一职责原则(公共方法超过 7 个、方法名含 and、Feature Envy 等信号);依赖管理(显式实例化、消息链、不恰当亲密关系,含 Law of Demeter 的正反例);Tell Don't Ask;开闭原则(case/if-elsif 类型分支、类型检查可改为多态);18 类代码坏味道(长方法、大类、长参数列表、数据泥团、消息链、条件复杂、命名含糊、标志参数、解释 what 的注释等);命名约定(Manager、Handler、process、save_and_send 等)。
使用方式:对代码审查请求按流程执行——解析代码结构,逐类原则检查,给出问题与可执行建议,按原则分区输出。输出含严重级别:Error(严重违规)、Warning(应修复)、Info(建议)、Pass(符合)。建议的重构手法包括 Extract Method、Extract Class、Replace Conditional with Polymorphism、Introduce Parameter Object。
适用场景:代码评审、重构规划、面向对象设计教学与自查。
限制:资料未提供安装命令、运行环境、平台支持、收费方式与具体调用接口;原则源自 Ruby 语境,其他语言适用性需自行判断。若用户有意破例,应先确认是否保留或提供替代方案。