用途:分析源代码中违反 Robert C. Martin 的 SOLID 面向对象设计原则之处,输出可操作的发现,包含严重程度、代码位置和具体重构建议。支持整体审计,也支持聚焦单个原则。
主要能力与子命令:solid all / solid check / solid(检查全部五项原则);solid srp(单一职责);solid ocp(开闭);solid lsp(里氏替换);solid isp(接口隔离);solid dip(依赖倒置)。未指定子命令时默认检查全部五项;当用户直接提到某原则名称(即使未说 solid)也会匹配对应子命令。
使用方式:先确定目标代码——提供文件或目录时直接使用,提到类或模块名时先定位,含糊时询问要扫描哪些文件或目录。分析前先读取对应原则的参考文件(references/srp.md、ocp.md、lsp.md、isp.md、dip.md;整体审计读取全部五份)。随后对各目标文件/类套用违规模式并判断是否为真违规。
报告结构:每条违规包含原则、严重程度(HIGH/MEDIUM/LOW)、位置(文件名、类名、约 XX-YY 行)、问题说明与重构建议。严重程度参考:HIGH 指带来维护痛苦、缺陷风险或阻碍扩展;MEDIUM 指随代码增长会引发问题的坏味道;LOW 指轻微设计不纯,可延后。所有发现后给出计数表(原则 × 高中低)、优先修复前三项及理由、以及一段整体结构健康评估。请求修复或重构时(如“fix this”“refactor it”“show me the clean version”),会产出解决违规的重构代码并简要说明每处改动。
支持语言:任何面向对象语言(Python、Java、TypeScript、C#、C++、Kotlin、Go 的结构体方法、Rust 的 impl 块等),并会按目标语言习惯调整检查方式。
限制与务实原则:这些是指导而非法则。小型工具脚本和原型应从轻处理,不为 30 行脚本缺少依赖注入而报错;对被说明的自觉权衡应予以承认而非强求纯粹;语言习惯重要,例如 Python 顶层函数模块不因未用类而违反 SRP,Go 接口隐式满足使 ISP 表现不同。优先给出可操作发现而非穷举清单,五项重要发现胜过二十项琐碎发现。
分类:属于编程与开发方向的代码质量审计工具。关于具体安装方式、收费、价格、平台或效果,资料暂未提供。