关于 051-design-two-steps-methods
面向 Java 开发者的交互式 Skill,通过将准备工作与行为修改分开,帮助处理复杂或高风险变更。它要求在保持行为的重构之后,以及最终变更之后分别验证。
主要功能
- 01明确预期的行为变更
- 02选择有针对性的准备性重构
- 03确保准备阶段不改变行为
- 04在每个步骤后验证
- 05交接给专门的实现 Skill
适用场景
- 01在高风险行为变更前重构
- 02将准备工作与功能开发分开
- 03验证保持行为的代码修改
- 04协调专门的 Java 实现指导
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jabrena/ plinth --skill 051-design-two-steps-methods安装后在 Claude Code 中输入/051-design-two-steps-methods确认已加载。
附带文件references/051-design-two-steps-methods.md
详细介绍
两步变更法
通过将设计准备与行为修改分开,指导 Java 开发者进行复杂或高风险的变更。这是一个交互式技能。
此技能涵盖哪些内容?
- 在编辑前明确预期的行为变更
- 找出导致变更困难或有风险的设计障碍
- 第 1 步:进行保持行为不变的准备性重构,让变更变得容易
- 验证第 1 步是否保留了现有行为
- 第 2 步:设计准备就绪后,进行最小幅度的预期行为变更
- 验证第 2 步是否实现了预期行为
- 在保留两步顺序的同时,移交给专注于 Java、框架、持久化、消息传递、API 或测试的技能
约束
将保持行为不变的准备工作与改变行为的工作分开,并在每一步之后进行验证。
- 必须:在提出准备性重构方案前,说明预期的行为变更
- 必须:确保第 1 步保持行为不变;不要将大范围重构与预期行为变更混在一起
- 必须:第 1 步后,使用适合项目的测试、构建、特征测试或手动检查来验证现有行为
- 必须:只有在设计准备就绪并经过验证后,才能进行第 2 步
- 必须:第 2 步后,使用针对性测试和相关构建检查验证预期行为
- 必须:如果无法将准备工作与行为变更完全分开,记录相关假设和风险
何时使用此技能
- 应用两步变更法
- 让这项高风险变更更安全
- 在改变行为前进行重构
- 将准备工作与行为变更分开
- 先让变更变得容易,再轻松完成变更
工作流
- 定义预期变更
阅读 references/051-design-two-steps-methods.md,检查相关代码和测试,并准确说明需要变更的行为或功能。指出当前设计为何导致变更复杂、有风险或难以验证。
- 规划准备性重构
选择能够消除障碍的最小幅度保持行为不变的重构:提取方法或类、明确名称、隔离依赖项、添加测试接缝、调整职责、改进类型,或在触及行为前添加特征测试。
- 让变更变得容易
将第 1 步仅用于有针对性的准备性重构。明确划分提交、备注或任务边界,让审查者能够确认其中不包含预期的行为变更。
- 验证行为是否保留
运行相关的现有测试、构建检查、特征测试或手动验证。如果行为出现意外变化,应在继续之前修复或撤销准备工作。
- 轻松完成行为变更
现在设计已准备就绪,可以进行最小幅度的预期行为变更。若需要详细的实现指导,可使用专注于 Java、框架、持久化、消息传递、API 或测试的技能。
- 验证并报告结果
使用针对性测试和相关项目验证来确认预期行为。报告哪些工作属于准备工作、哪些改变了行为、每一步之后验证了什么,以及还有哪些风险。
参考
如需详细指导、示例和约束,请参阅 references/051-design-two-steps-methods.md。