成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何寫出干凈的代碼 代碼越少越干凈嗎?

開發(fā) 前端
在我眼中,干凈的代碼就是簡單、易于理解的代碼。不過分設(shè)計(jì),模板文件盡可能地少,語義明確。那么,這樣是否就意味著代碼越少越干凈呢?

在我眼中,干凈的代碼就是簡單、易于理解的代碼。不過分設(shè)計(jì),模板文件盡可能地少,語義明確。那么,這樣是否就意味著代碼越少越干凈呢?

[[133746]]

我不這么認(rèn)為。大多數(shù)情況下,更少的代碼往往語義更模糊,更難理解(因此更難維護(hù))。

當(dāng)我使用jBehave工作和測(cè)試元過濾時(shí),我寫了類似于下面的代碼:

  1. public Embedder configuredEmbedder() { 
  2. Embedder embedder = super.configuredEmbedder(); 
  3. ignoreStoriesAndScenariosWithMetaInformationParameter(embedder, "ignore"); 
  4. return embedder; 
  5. private void ignoreStoriesAndScenariosWithMetaInformationParameter(Embedder embedder, String ignoreParameter) { 
  6. embedder.useMetaFilters(Arrays.asList("-" + ignoreParameter)); 

在之后對(duì)這些代碼的討論中,我的一個(gè)同事表示,他剛剛刪除了一些“沒有必要”的私有方法,于是代碼變成了這樣:

  1. @Override 
  2. public Embedder configuredEmbedder() { 
  3. Embedder embedder = super.configuredEmbedder(); 
  4. embedder.useMetaFilters(Arrays.asList("-ignore")); 
  5. return embedder; 

顯然,方法更短,代碼更少了。對(duì)我們來說,使用這樣的類,或許能讓我們?cè)诠ぷ鲿r(shí)對(duì)這個(gè)方法所發(fā)生的變化一目了然。但是如果有新加入項(xiàng)目的人呢,并且 這家伙之前從未使用過jBehave呢?對(duì)他而言,長一點(diǎn)的代碼反而可以獲取更多的信息,即使他不知道jBehave是如何工作的,不清楚“元過濾器”是 什么,不懂minus的意思——但是至少能理解我們想要實(shí)現(xiàn)的目標(biāo)。

當(dāng)我試圖解釋自己的看法時(shí),其他開發(fā)人員雖然同意我的觀點(diǎn),但卻認(rèn)為通過添加注釋也可以達(dá)到相同的效果。是的,我完全同意,添加注釋肯定是有效的。 這只是風(fēng)格問題。我個(gè)人不喜歡注釋而已,不過,在上述這種情況下,或許注釋的確是更好的選擇,因?yàn)槲覀兛梢酝ㄟ^注釋解釋元過濾器代碼和jBehave層文 件之間的聯(lián)系。

 

所以***,代碼成了這樣的:

  1. @Override 
  2. public Embedder configuredEmbedder() { 
  3. Embedder embedder = super.configuredEmbedder(); 
  4. // ignore stories and scenarios with meta information parameter @ignore. 
  5. embedder.useMetaFilters(Arrays.asList("-ignore")); 
  6. return embedder; 

當(dāng)然你可以說,這樣一個(gè)小小的事例不值一提。但是,一個(gè)項(xiàng)目的風(fēng)格,我認(rèn)為是非常重要的。你也可以通過討論具體的例子找到一種普遍的風(fēng)格。也許其他開發(fā)人員會(huì)因此而考慮他的代碼是否會(huì)給新加入的同事帶來困惑,從而去添加注釋,而不是將方法縮成減一行代碼。

 

結(jié)論

干凈的代碼并不總意味著更少的代碼。所以,你需要在編寫更多的小方法和縮減代碼行數(shù)之間權(quán)衡得失。關(guān)于編碼風(fēng)格,以后我會(huì)再發(fā)帖子予以討論。

你更喜歡哪種解決方案,為什么呢?歡迎留下各位的看法。

譯文鏈接:http://www.codeceo.com/article/is-clean-code-less-code.html
英文原文:Is Clean Code less Code?

 

責(zé)任編輯:王雪燕 來源: 碼農(nóng)網(wǎng)
相關(guān)推薦

2015-05-13 09:52:29

程序員代碼

2021-09-01 08:55:20

JavaScript代碼開發(fā)

2021-11-30 10:20:24

JavaScript代碼前端

2020-05-27 10:38:16

開發(fā)代碼技巧

2022-06-07 09:30:35

JavaScript變量名參數(shù)

2022-03-09 09:00:00

代碼技巧程序員

2020-07-15 08:17:16

代碼

2020-05-11 15:23:58

CQRS代碼命令

2013-06-07 14:00:23

代碼維護(hù)

2020-07-15 14:51:39

代碼C+開發(fā)

2020-08-27 07:00:00

代碼軟件應(yīng)用程序

2022-02-08 19:33:13

技巧代碼格式

2021-01-04 07:57:07

C++工具代碼

2022-02-17 10:05:21

CSS代碼前端

2020-12-19 10:45:08

Python代碼開發(fā)

2019-09-20 15:47:24

代碼JavaScript副作用

2022-03-11 12:14:43

CSS代碼前端

2020-05-19 15:00:26

Bug代碼語言

2023-03-27 15:05:10

Python技巧

2017-09-14 12:45:35

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 中文字幕一区二区三区乱码图片 | 中文字幕 国产 | 精品一区二区av | 97精品久久 | 日日日日操| 中文字幕日韩三级 | 久久精品这里精品 | 99精品欧美一区二区三区 | 午夜在线视频 | 亚州影院 | av国产精品| 久久精品亚洲欧美日韩精品中文字幕 | 久久成人激情 | 亚洲日本成人 | 懂色一区二区三区免费观看 | 国产成人精品a视频一区www | 日韩尤物视频 | 精品一区二区三区四区在线 | 狠狠久久综合 | 亚洲视频欧美视频 | av在线二区 | av中文网 | 国产成人精品一区二区三区视频 | 国产精品久久久久久久久久 | 女女百合av大片一区二区三区九县 | 久久精品国产亚洲夜色av网站 | 成人免费视频网站在线看 | 欧美日韩高清在线观看 | 国产一级免费视频 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 久色| 日韩成人一区 | 久久精品国产99国产精品 | 国产一级特黄真人毛片 | 一区二区三区四区免费在线观看 | www.9191| 伊人精品在线 | 久久6视频 | 性福视频在线观看 | 国产精品免费播放 | 国产精品久久久久久久久久三级 |