你是否應(yīng)該讀 Clean Code 這本書 (中)

前情提要

上一篇文章中惩坑,講到了我在閱讀這本書時的感悟,及我對身邊同伴于這本書閱讀觀感的觀察也拜、疑惑和思考旭贬。在今天的文章中,我將說明疑惑是如何被解決的搪泳。

如果你看不懂它的話,那么你就看不懂它

前面我們說到扼脐,老人們認(rèn)為岸军,缺乏足夠經(jīng)驗的新手無法領(lǐng)悟 Clean Code奋刽。這難道不是一個很諷刺的回答嗎?一本書寫出來是為了給人指導(dǎo)的艰赞,如果說佣谐,只有已經(jīng)具備很足夠經(jīng)驗的人才能看懂它,而無法對缺乏經(jīng)驗的人一點幫助方妖,那么狭魂,這本書其實是無用的。打個比方的話党觅,就等于幼兒園的小朋友看線性代數(shù)……

反過來想

到這個地步雌澄,基本上這個問題是無解的了。于是我想到《如何解題》中的建議——
反過來思考杯瞻。

我一直在想 Clean Code 這本書該怎么看镐牺,怎樣才能從中得到收獲?可是我從來
沒有問過魁莉,為什么我要讀這本書睬涧!

是呀,為什么我需要讀這本書呢旗唁?老人們?yōu)槭裁聪胱屛易x這本書呢畦浓?他們認(rèn)為讀了這本書可以習(xí)得一些編寫整潔代碼的要點,會提高代碼的質(zhì)量检疫。

為什么要讀這本書 -> 老人的建議 -> 提高代碼質(zhì)量

也就是說讶请,其實他們的 目的是讓我提高代碼質(zhì)量,而不是讀這本書本身 电谣。于是秽梅,我們成功地可以把問題從 如何閱讀 Clean Code 規(guī)約為 如何提高代碼質(zhì)量

感覺好像問題變得更加明了了剿牺,但是如果我們再深入一步呢——為什么要提高代碼
質(zhì)量企垦?

高質(zhì)量代碼 -> 可讀性高 

可讀性高 -> 別人能看得懂

為什么要讓別人讀得懂 -> 減少溝通成本

為什么要減少溝通成本 -> 團(tuán)隊開發(fā)

這才是真正的問題,整潔代碼的目的在于減少團(tuán)隊成員的溝通成本晒来,而不在于寫出讓自己滿意的代碼钞诡。

什么是 Clean Code

深合己意?

如何每個例程都讓你感到深合己意湃崩,那就是整潔代碼 - 沃德原則

咋看之下荧降,這說的是對的。仔細(xì)想想攒读,會發(fā)現(xiàn)這句話是經(jīng)不起推敲的朵诫。我寫了一
段自己滿意的代碼,那么它就是整潔代碼了薄扁。如果正如這個 沃德原則 所言的話剪返,
那么整潔的垃圾代碼真的不少废累。自己滿意,但是別人看不懂的代碼多了去了脱盲,這
句話純粹是廢話邑滨,完全經(jīng)不起推敲。

那么到底怎樣才算是整潔代碼钱反?

大家好才是真的好掖看?

如果每段代碼都讓團(tuán)隊里的人一看就知道是什么意思,那就是整潔代碼面哥。

代碼的質(zhì)量不是作者自己能評定的哎壳,要由團(tuán)隊來決定。能讓團(tuán)隊成員一下子看懂
的幢竹,符合團(tuán)隊開發(fā)風(fēng)格的耳峦,才是質(zhì)量高的代碼。程序員的工作焕毫,很少單獨有一個人完成的蹲坷。正是因為團(tuán)隊開發(fā)的原因,整潔代碼才是有必要的邑飒。

真正的問題

只有在團(tuán)隊開發(fā)的情況下循签,別人才需要不得不大量閱讀你編寫的代碼。這個時候疙咸,
如果你寫的代碼可讀性特別差县匠,就會大大提高成員之間的溝通成本,降低工作效
率撒轮。

兩個人的團(tuán)隊中乞旦,A 和 B 每天開始工作時都得問對方寫的代碼是什么意思
三個人的團(tuán)隊中,A, B 和 C 一共需要溝通 6 次
四個人的團(tuán)隊中题山,A,B顶瞳,C 和 D 需要 24 次
五個人的團(tuán)隊中,A慨菱,B,C符喝,D 和 E 需要 120 次

這個計算當(dāng)然是夸張了闪彼,但是,它說明了可讀性的代碼對于團(tuán)隊生產(chǎn)力的巨大破
壞作用协饲,從反面來說课蔬,也就證實了可讀性對于團(tuán)隊開發(fā)的重要性郊尝。

就是在團(tuán)隊開發(fā)的情況下,別人才需要閱讀你的代碼以進(jìn)行增量開發(fā)和功能拓展战惊,
也就只有在這種情況下流昏,可讀性才顯得如此重要。

自己寫完就扔的代碼吞获,不需要可讀性况凉,就算寫完了只有上帝知道它做了什么各拷,有
什么關(guān)系?大括號該放哪兒烤黍?蛇底式還是駝峰式?函數(shù)命名要用動詞闪萄?類名應(yīng)該
是名詞辐烂,不能用復(fù)數(shù)?自己怎么開心怎么來好吧赊时,管它呢~~~

未完待續(xù)……

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末试读,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子腥放,更是在濱河造成了極大的恐慌痘番,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,378評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件汞舱,死亡現(xiàn)場離奇詭異,居然都是意外死亡莹规,警方通過查閱死者的電腦和手機泌神,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評論 3 399
  • 文/潘曉璐 我一進(jìn)店門舞虱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來母市,“玉大人矾兜,你說我怎么就攤上這事∫嗡拢” “怎么了蒋失?”我有些...
    開封第一講書人閱讀 168,983評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長篙挽。 經(jīng)常有香客問我,道長铣卡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,938評論 1 299
  • 正文 為了忘掉前任梧油,我火速辦了婚禮州邢,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘量淌。我一直安慰自己,他們只是感情好胚股,可當(dāng)我...
    茶點故事閱讀 68,955評論 6 398
  • 文/花漫 我一把揭開白布裙秋。 她就那樣靜靜地躺著,像睡著了一般摘刑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上党晋,一...
    開封第一講書人閱讀 52,549評論 1 312
  • 那天,我揣著相機與錄音未玻,去河邊找鬼灾而。 笑死扳剿,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的轻庆。 我是一名探鬼主播敛劝,決...
    沈念sama閱讀 41,063評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼纷宇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了像捶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,991評論 0 277
  • 序言:老撾萬榮一對情侶失蹤释簿,失蹤者是張志新(化名)和其女友劉穎硼莽,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體懂鸵,經(jīng)...
    沈念sama閱讀 46,522評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,604評論 3 342
  • 正文 我和宋清朗相戀三年套像,在試婚紗的時候發(fā)現(xiàn)自己被綠了终息。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,742評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡柳譬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出征绎,到底是詐尸還是另有隱情,我是刑警寧澤人柿,帶...
    沈念sama閱讀 36,413評論 5 351
  • 正文 年R本政府宣布凫岖,位于F島的核電站江咳,受9級特大地震影響哥放,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜甥雕,卻給世界環(huán)境...
    茶點故事閱讀 42,094評論 3 335
  • 文/蒙蒙 一社露、第九天 我趴在偏房一處隱蔽的房頂上張望挟阻。 院中可真熱鬧峭弟,春花似錦、人聲如沸瞒瘸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谎柄。三九已至,卻和暖如春朝巫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背劈猿。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留筷黔,地道東北人仗颈。 一個月前我還...
    沈念sama閱讀 49,159評論 3 378
  • 正文 我出身青樓椎例,卻偏偏與公主長得像请祖,于是被迫代替她去往敵國和親订歪。 傳聞我的和親對象是個殘疾皇子肆捕,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,747評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,312評論 25 707
  • 前情提要 在前兩篇文章中慎陵,我們已經(jīng)明確了 Clean Code 的目的是減少團(tuán)隊成員的溝通成本,今天我將根據(jù)自身的...
    afaren閱讀 841評論 6 1
  • 本文把程序員所需掌握的關(guān)鍵知識總結(jié)為三大類19個關(guān)鍵概念捏悬,然后給出了掌握每個關(guān)鍵概念所需的入門書籍润梯,必讀書籍邮破,以及...
    dle_oxio閱讀 11,139評論 6 244
  • 最近,Gary Bernhardt 在一個簡短的演講視頻“Wat”中指出了一個有趣的 JavaScript 怪癖:...
    theCoder閱讀 480評論 0 0
  • 今夜又會夢見 那個熟悉又陌生的身影嗎 希望不會 那代表徹底的遺忘 夢是滿足愿望 弗洛伊德的聲音 穿越時空印在課本上...
    Snail蓉閱讀 275評論 0 0