| 度量 | if/for/while/try 的嵌套层级 |
|---|---|
| 手段 | Guard Clauses、Extract Function、查表 |
| 经验 | 超过 3-4 层触发重构讨论 |
深层嵌套改造
深层嵌套改造
// 之前:四层缩进
if (a) { if (b) { if (c) { if (d) { work(); } } } }
// 之后:卫语句
if (!a) return;
if (!b) return;
if (!c || !d) return;
work();控制流嵌套层数直接影响可读性与出错率:超过三层左右通常难跟;治理手段是卫语句提前返回、提取函数、用查表替代分支;各语言风格指南常给出上限建议。
| 度量 | if/for/while/try 的嵌套层级 |
|---|---|
| 手段 | Guard Clauses、Extract Function、查表 |
| 经验 | 超过 3-4 层触发重构讨论 |
// 之前:四层缩进
if (a) { if (b) { if (c) { if (d) { work(); } } } }
// 之后:卫语句
if (!a) return;
if (!b) return;
if (!c || !d) return;
work();