作家
登录

6个编写优质干净代码的技巧

作者: 来源: 2017-09-14 15:00:28 阅读 我要评论

  • }); 
  •  
  • // Better 
  • const firstName = ‘Tom’; 
  • const lastName = ‘Hanks’ 
  • const age = 31; 
  • const lastNameLength = lastName.length; 
  • const isComplete = false
  • const isCurrentlyActive = true
  • const songFileName = ‘Remember the name’; 
  • const yearsDoubled = [‘1984’, ‘1987’, ‘1989’, ‘1991’].map((year) => { 
  •   return year * 2; 
  • }); 
  • 然而须要留意的是,应用描述性名称并不料味着可以随便应用随便率性多个字符。一个好的经验则是将名字限制在3或4个单词。如不雅须要应用跨越4个悼?船解释这个函数或办法须要同时履行很多的义务,所以应当简化代码,只应用须要的字符。

    引用

    3.让一个函数或办法只履行一个义务

    当开端编写代码时,应用的函数和办法看起来就像一把瑞士军刀,几乎可以处理任何工作,然则很难找到一个好的定名。别的,除了编写者,几乎没有人知道函数是用来做什么的以及该若何应用它。有时我就会碰到这些问题,我在这方面做的很不好。

    然后,有人提出了一个很好的建议:让每个函数或办法只履行一个义务。这个简单的建议改变了一切,赞助我写出了干净的代码,至少比以前更干净了。大年夜那今后,其他人终于可以或许懂得我的代码了,或者说,他们不须要像以前一样花很多时光去读懂代码了,功能和办法也变得更好懂得。在雷同的输入下,老是能产生雷同的输出,并且,定名也变得轻易得多。

    如不雅你很难找到函数和办法的描述性名称,或者须要编写冗长的指令以便其他人可以应用,那请推敲这个建议,让每个函数或办法只履行一个义务。如不雅你的功能和办法看起来像瑞士军刀一样无所不克不及,那请你履行这个办法,信赖我,这种多才多艺不是一种优势。这是一个相当晦气的情况,可能会产闹事与愿违的结不雅。

    附注:这种让每一个函数或办法只履行一项义务的做法被称为保持纯函数。这种编码实践来自于函数式编程的概念。如不雅你想懂得更多,我推荐浏览《So You Want to be a Functional Programmer series[4]》。

    1. // Examples of pure functions 
    2. function subtract(x, y) { 
    3.     return x - y; 
    4.  
    5. function multiply(x, y) { 
    6.     return x * y; 
    7.  
    8. // Double numbers in an array 
    9. function doubleArray(array) { 
    10.   return array.map(number => number * 2) 

    4.更轻易遵守编码模式

    51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦!

    【编辑推荐】

    1. 30多年的软件经验,总结出10个编写出更好代码的技能
    2. Skype 推新功能:法度榜样员可长途 PK 代码
    3. 10行Python代码创建可视化地图
    4. 写的代码又被喷?8招让你的代码更Pythonic
    5. 代码质量实际上意味着什么?
    【义务编辑:未丽燕 TEL:(010)68476606】

    不管多么尽力地为变量、函数和办法想出有意义的名字,代码仍然弗成能完全清楚易懂,还有一些思路须要进行解释。问题可能不是代码很难解得或应用,相反,其他人可能不睬解为什么要实现这个函数或办法,或者为什么要以特定的方法创建它。意思是,创建函数或办法的意图还不清跋扈。

    有时可能不得不采取非传统的办法来解决问题,因为没有足够的时光来想出更好的解决筹划,这也很难用代率攀来解释。所以,经由过程代码注释可以赞助解决这个问题,也可以赞助我们向其他人解释为什么写了这个办法,为什么要用这种特定的方法来写,那么其他人就不必猜测这些办法或函数的用处了。

    更重要的是,当我们应用注来解释代码后,其他人可能会找到一个更好的办法来解决这个问题并改绝代码。这是有可能的,因为他们知道问题是什么,以及期望的结不雅是什么。如不雅不知道这些信息,其他人就很难创建更好的解决筹划,或者他们可能不会去测验测验,因为他们认为没有须要去修改创建者本身的设法主意。


      推荐阅读

      人工智能将促进教育大变革

    51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦!一场教导变革在悄然产生,这场变革不是自上而下推动的轨制改革,而是自下而上的技巧立异。这场技巧立异的动力源来自于>>>详细阅读


    本文标题:6个编写优质干净代码的技巧

    地址:http://www.17bianji.com/lsqh/37420.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)