当我编写一些脚本时,我通常会达到我的代码如下所示的位置:
end
end
end
end
end
end
我不了解你,但这对我来说非常难看。可以做些什么吗?
答案 0 :(得分:19)
不要将代码嵌套这么多?重构使用更多方法?使用传递给其他例程的块吗?
一般来说,深度嵌套是指示方法过于复杂且应该被分解的指标。它也可以通过根据重构方法命名内部复合语句来帮助隐式结构文档。
答案 1 :(得分:5)
分解成小块的建议很好。但是如果你需要很多这样的嵌套块,你可以用评论标记end
个关键字。
end # End conditional statement
end # End method declaration
end # End class declaration
仍然很难看,但至少更清楚。
之前提到的其他选项更可取。
答案 2 :(得分:4)
如果那些内部块做了一些容易命名的东西(并且可能是可重用的?),为什么不将它们重构成小的独立函数呢?那么你最终会得到更短的结尾序列。
否则另一种方法是使用Python: - )
答案 3 :(得分:2)
尝试使用小型,可测试的功能。您的功能和更重要的逻辑不仅易于测试,而且您的代码变得更具可读性。
答案 4 :(得分:1)
我见过嵌套的“{}”块和4空格的软标签:
端;端;端;端
我想这可以节省垂直空间,但我不建议,上面关于避免深度嵌套和评论块结束行的注释是有效的方法。也许深度嵌套是为了避免需要加速的事情的方法调用开销,但可读性几乎总是胜过那种“优化”
答案 5 :(得分:1)