手机版

谈JavaScript代码的整洁

时间:2021-08-29 来源:互联网 编辑:宝哥软件园 浏览:

总结

一张幽默的图片:软件质量是通过你阅读代码时有多少抱怨来评估的

《代码整洁之道》中Robert C. Martin提到的软件工程原理也适用于JavaScript。这不是风格参考。它指导如何用JavaScript编写可读、可重用、可重构的软件。

不是每个原则都必须严格遵循,甚至很少被大家认可。仅供参考,但要知道这些原则是《代码整洁之道》作者多年积累的集体经验。

我们在软件工程方面的技术发展刚刚超过50年,我们还在学习很多东西。当软件架构和架构本身一样老的时候,我们应该遵循更严格的规则。现在,对于您和您的团队编写的JavaScript代码,您可能希望根据这些准则来评估质量。

还有一点:知道这一点不会马上让你成为一个更好的软件开发人员,而且在工作中常年使用这些准则也不会让你避免错误。每一段代码都是从最初的草图开始,到最后的成型,就像成型湿粘土一样。最后,当我们和同龄人一起复习时,我们会消除不完美之处。不要因为初稿需要改进而否定自己,只需要否定那些代码!

可变的

使用含义准确的变量名

坏:

var yyyymmdstr=矩()。格式(' YYYY/MM/DD ');好的:

var yearMonthDay=moment()。格式(' YYYY/MM/DD ');当变量值不变时,使用ES6的常量

在一个不好的例子中,变量是可以改变的。如果声明一个常数,它在整个程序中保持不变。

坏:

var FIRST_US_PRESIDENT='乔治华盛顿';好的:

const FIRST_US_PRESIDENT='乔治华盛顿';对相同类型的变量使用相同的词汇

坏:

getUserInfo();getClientData();getCustomerRecord();好的:

getUSer();使用可检索的名称

我们读的代码总是比写的多。编写可读且易于检索的代码非常重要。在程序中使用没有明确含义的变量名会很难理解,对读者造成伤害。因此,该名称被定义为可检索的。

坏:

//见鬼,525600是什么?for(var I=0;i 525600I){ RunCronJob();}好:

//全局变量var MINUTES_IN_A_YEAR=525600被` var '声明为资本;for(var I=0;一年分钟;I){ RunCronJob();}使用解释性变量

坏:

const cityStateRegex=/^(.)[,\\s](。)\ s *(d { 5 })?$/;save city state(city state regex . match(city state regex)[1],city state regex . match(city state regex)[2]);好的:

const cityStateRegex=/^(.)[,\\s](。)\ s *(d { 5 })?$/;const match=city stateregex . match(city stateregex)const city=match[1];const state=匹配[2];saveCityState(城市、州);避免暗示

显性比隐性好。

坏:

var locations=['奥斯汀','纽约','旧金山'];locations . foreach((l)={ Dostuff();doSomeOtherStuff();//以此类推,` l '是什么?派遣(l);});好的:

var locations=['奥斯汀','纽约','旧金山'];locations . foreach((location)={ Dostuff();doSomeOtherStuff();.派遣(地点);});不要添加不必要的上下文

如果类名/对象名已经指出它们是什么,不要在变量名中重复它们。

坏:

var Car={ carMake: 'Honda ',carModel: 'Accord ',ca

版权声明:谈JavaScript代码的整洁是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。