当前位置: 首页 > 科技观察

请停止编写“糟糕”的代码!

时间:2023-03-22 17:05:51 科技观察

【.com速译】作为一名学校老师,我的工作就是不断地检查学生写的代码。这里不想跟任何人开玩笑,所以所有的例子都是匿名发布的,只希望大家能够借鉴。话不多说,我们来看一个精彩的例子:if(a<8&&b<8&&c<8)a=8;b=8;c=8;你不妨看看错误在哪里。怎么样,你发现了多少问题?我们先分析一下。最吸引眼球的绝对是“如果”的密度。三个条件之间没有空格隔开。由于&运算符与8相邻,所以很容易混淆。这是问题之一,空间。代码内容之间最好加空格,包括语句之间、运算符前后。让我们重写它:if(a<8&&b<8&&c<8)显然,现在看起来好多了。问题2有编程经验的朋友一定对“魔数”印象深刻。幻数是直接出现在代码中的数字,不是自我描述的,对读者没有意义。如果你对“8”这个数字没有什么特别负面的感受,那你可以确定你已经很久没有编程了。欢迎大家来猜猜这个数字的含义。由于是我给学生布置的作业,所以我知道这里“8”的意思(代表工人最早下班的时间),但别人很难猜到。更糟糕的是,数字“8”在这段代码中重复了6次,这意味着如果我们想用7替换它,我们需要多次修改它并仔细检查以确保“8”不是错过了。解决方案当然是使用常量。这里我们可以定义一个常量:finalintEARLIEST_HOUR=8;现在代码变成这样:if(a