重构的艺术:五个小妙招助你写出好代码!
在编写代码时,前提语句是绝对须要的。然而,他们很快就会失控,最终让我们无法领略这些语句。这导致我们要么必需编写注释来表明语句的浸染,要么必需耗费名贵的时刻来一条一条搜查代码来相识产生了什么。这很糟糕。 看一下下面的语句:
伟大的前提语句 假如只看前面函数里if语句中的代码,很难领略产生了什么。代码表意不清晰,不清晰的代码只会导致技能错误,还会让人们很是头痛。 奈何改进前提语句呢?可以把它写成一个函数。以下是详细操纵要领:
把前提语句写成函数 通过将前提提取到具有描写性名称isGameLost()的函数中,checkGameStatus函数此刻就变得很轻易领略。为什么?由于代码表意更清楚。它可以或许汇报我们产生了什么,这是我们应该一向全力的偏向。 3. 用卫语句(Guard Clauses)取代嵌套的if语句 嵌套if语句是在代码中也许碰着的最可骇的工作之一。你要是想可以或许完全把握代码的环境,这绝对会让你精疲力竭。下面是一个嵌套if语句的例子(这个嵌套有三层):
嵌套的if语句 你也许必要花几分钟时刻上下阅读,才气相识函数运作的流程。嵌套的if语句很难让人阅读和领略。那么,怎样才气挣脱厌恶的嵌套if语句呢?可以反向思索,行使卫语句来更换这些句子。 “在计较机措施计划中,卫语句是一个布尔表达式,假如措施要在有题目的分支里继承运行的话,它的求值必需为true。”——维基百科 通过颠倒函数的逻辑,并在函数开始时安排导致早期退出的前提,它们将变为掩护措施,而且只应承函数在满意全部前提时继承执行。这样可以停止else语句。下面是怎样重构之前的函数以行使卫语句的要领:
用卫语句重构函数 如你所见,代码更清楚,更轻易领略。我们可以简朴向下阅读来相识函数的浸染,遵循函数的天然活动,不像早年那样上下阅读。 4. 不要写一再的代码 写一再的代码老是以失败了却。它会导致如下环境:“我在这里修复了这个bug,可是健忘在哪里修复”或“我必要在五个差异的处所变动/添加一个新成果”。 正如DRY(Don’t repeat yourself不要一再)原则所说: 因此,代码越少越好:它节减了时刻和精神,更易于维护,并镌汰了错误的呈现。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |