加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

这三个技巧,让你的代码可读性提高300%

发布时间:2019-06-06 17:22:21 所属栏目:建站 来源:读芯术
导读:注意!注意!想要作为优秀的程序员必须遵守一些不成文的规定。本文不是在讨论算法、数据结构、软件架构和程序设计,而是在讨论一些更基本、更重要的东西:可读性。 源代码是程序员耗尽了心血和精力的作品,所以不应当存在快刀斩乱麻的现象。忽视这些规定看似

注意!注意!想要作为优秀的程序员必须遵守一些不成文的规定。本文不是在讨论算法、数据结构、软件架构和程序设计,而是在讨论一些更基本、更重要的东西:可读性。

源代码是程序员耗尽了心血和精力的作品,所以不应当存在“快刀斩乱麻”的现象。忽视这些规定看似让代码生成速度加快,但事实上往往导致事倍功半。

代码敲一次,阅读无数次。因此,优化代码提高可读性显得尤为重要。为了帮助生成高度可读的代码,本文归纳总结了必须遵守的3个重要规定。遵循这些规则可以帮助使用代码的人员维护、扩展和调整代码。此外,可读性高的代码更不容易出错。

这三个技巧最好的地方在于:可以立即实现。不需要训练时间。仅仅需要几分钟就能蜕变成更优秀的程序员!

代码可读性

使用描述性的变量和函数名

程序代码往往包含上千单词。当然,也有篇幅较短的代码。使用自解释变量和函数名使代码更容易阅读、理解、维护和后续扩展。举个例子:

这三个技巧,让你的代码可读性提高300%

在编写这段代码时,开发人员确切地知道要实现的是哪种功能。但是,其他人能理解吗?这就要看灵感和缘分了。开发人员可以添加一条注释来描述这段代码的用途,但是使用描述性变量名能够更直观地告诉读者相关信息,比如:

这三个技巧,让你的代码可读性提高300%

看!现在是不是更容易理解了。仅通过使用描述性变量名,读者就可以立即了解该代码能将华氏温度(Fahrenheit)转换为摄氏温度(Celsius)。现在定义一个函数实现上述代码功能,并观察根据函数名和参数名对可读性的影响程度。

“简短”版:

这三个技巧,让你的代码可读性提高300%

“细节补充”版:

这三个技巧,让你的代码可读性提高300%

很明显:比起只用单个字母表示变量和函数名的“简短”版,“细节补充”版需要花费更多的打字时间。

但是,理解这两个版本的代码又需要多长时间呢? 自解释代码不仅为读者节省了许多理解代码的时间,同时也为开发人员节省大量时间。为了更改程序细节或者编写拓展程序,开发人员经常需要回顾数月前编写的代码。然后就一脸懵的看着屏幕:“我滴个神啊,我都写了啥?任何可以优化阅读性的方法都值得付出额外的打字时间。

使用适当的缩进

因为Guido van Rossum 决定在他设计的Python编程语言中强制执行缩进,所以使用Python进行编程的读者可以跳过本节。

如果使用的是如C、C++、Java、JavaScript、PHP、C#、PHP等其他受众良多的编程语言,那么牢记这条技巧:

按层次缩进代码。

可以使用制表符或者空格,空格按3次或者按4次也可按照开发人员的喜好而定。只要记住缩进在编程中是必须的就OK了。接下来通过比较一些JavaScript代码来进一步说明。这段代码:

  • 将100至110华氏度换算成相应摄氏度。
  • 将转换后的值四舍五入至个位(使数据变为整数)。
  • 将所有偶数摄氏度值输出到控制台(这是通过使用模数运算符”%”完成的,该操作符返回整数除法的余数。因此,11% 2 =1,12% 2 = 0)

没有缩进的版本:

这三个技巧,让你的代码可读性提高300%

有缩进的版本:

这三个技巧,让你的代码可读性提高300%

代码中还添加了一些空白行来进一步结构化代码。这两段代码中哪个的可读性更高呢?

恰当地使用函数

通过使用函数可以构建可重复使用的代码块。这些还可以使代码更结构化、更具可读性和可理解性。能够避免重复的代码是函数最重要的特性。

定义函数(或类、模块等等,这取决于使用哪种编程语言)可以解决在代码库中多次出现相同的代码段的冗杂状态。下述示例就是很好的示范:

这三个技巧,让你的代码可读性提高300%

上述代码输出华氏度数值和相应的摄氏度数值。很明显,上述代码存在重复性代码段,这种情况下创建一个函数就可以更快速地完成上述功能:

这三个技巧,让你的代码可读性提高300%

更清爽对吧!代码看起来更干净、更简洁。而且,它比前一个示例更具描述性。那个公式只会在定义ConvertAndPrint函数时出现一次。如果只是想把华氏度转换成摄氏度但是不显示这些数据呢?可以通过定义不同的函数来实现:

这三个技巧,让你的代码可读性提高300%

有木有!这种方法构建了含有自解释代码的构建块,以便在不同的程序设计段中以多种方式重复调用这些构建块。

到这就结束了?No!

还是有的地方代码重复性很高啊。PrintFahrenheitAndCelsius 函数需要输入4个值。那么只想转换3个值的时候怎么办呢?想转换300个值的时候又该怎么办呢?当然有一个更好的方法!

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读