然而须要留意的是,应用描述性名称并不料味着可以随便应用随便率性多个字符。一个好的经验则是将名字限制在3或4个单词。如不雅须要应用跨越4个悼?船解释这个函数或办法须要同时履行很多的义务,所以应当简化代码,只应用须要的字符。
引用
3.让一个函数或办法只履行一个义务
当开端编写代码时,应用的函数和办法看起来就像一把瑞士军刀,几乎可以处理任何工作,然则很难找到一个好的定名。别的,除了编写者,几乎没有人知道函数是用来做什么的以及该若何应用它。有时我就会碰到这些问题,我在这方面做的很不好。
然后,有人提出了一个很好的建议:让每个函数或办法只履行一个义务。这个简单的建议改变了一切,赞助我写出了干净的代码,至少比以前更干净了。大年夜那今后,其他人终于可以或许懂得我的代码了,或者说,他们不须要像以前一样花很多时光去读懂代码了,功能和办法也变得更好懂得。在雷同的输入下,老是能产生雷同的输出,并且,定名也变得轻易得多。
如不雅你很难找到函数和办法的描述性名称,或者须要编写冗长的指令以便其他人可以应用,那请推敲这个建议,让每个函数或办法只履行一个义务。如不雅你的功能和办法看起来像瑞士军刀一样无所不克不及,那请你履行这个办法,信赖我,这种多才多艺不是一种优势。这是一个相当晦气的情况,可能会产闹事与愿违的结不雅。
附注:这种让每一个函数或办法只履行一项义务的做法被称为保持纯函数。这种编码实践来自于函数式编程的概念。如不雅你想懂得更多,我推荐浏览《So You Want to be a Functional Programmer series[4]》。
- // Examples of pure functions
- function subtract(x, y) {
- return x - y;
- }
- function multiply(x, y) {
- return x * y;
- }
- // Double numbers in an array
- function doubleArray(array) {
- return array.map(number => number * 2)
- }
4.更轻易遵守编码模式
51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦!
【编辑推荐】
- 30多年的软件经验,总结出10个编写出更好代码的技能
- Skype 推新功能:法度榜样员可长途 PK 代码
- 10行Python代码创建可视化地图
- 写的代码又被喷?8招让你的代码更Pythonic
- 代码质量实际上意味着什么?
不管多么尽力地为变量、函数和办法想出有意义的名字,代码仍然弗成能完全清楚易懂,还有一些思路须要进行解释。问题可能不是代码很难解得或应用,相反,其他人可能不睬解为什么要实现这个函数或办法,或者为什么要以特定的方法创建它。意思是,创建函数或办法的意图还不清跋扈。
有时可能不得不采取非传统的办法来解决问题,因为没有足够的时光来想出更好的解决筹划,这也很难用代率攀来解释。所以,经由过程代码注释可以赞助解决这个问题,也可以赞助我们向其他人解释为什么写了这个办法,为什么要用这种特定的方法来写,那么其他人就不必猜测这些办法或函数的用处了。
更重要的是,当我们应用注来解释代码后,其他人可能会找到一个更好的办法来解决这个问题并改绝代码。这是有可能的,因为他们知道问题是什么,以及期望的结不雅是什么。如不雅不知道这些信息,其他人就很难创建更好的解决筹划,或者他们可能不会去测验测验,因为他们认为没有须要去修改创建者本身的设法主意。
推荐阅读
51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦!一场教导变革在悄然产生,这场变革不是自上而下推动的轨制改革,而是自下而上的技巧立异。这场技巧立异的动力源来自于>>>详细阅读
本文标题:6个编写优质干净代码的技巧
地址:http://www.17bianji.com/lsqh/37420.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示