中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

最臭的臭彈(Biggest Stinkers)

  在 SDTConf 2009論壇上,Corey Haines和我共同主持了一個(gè)叫做“最臭的臭彈”的研討會(huì)。會(huì)議上,我們?cè)噲D去尋找下面兩個(gè)(不同的)問(wèn)題的答案:

  • 作為一個(gè)經(jīng)驗(yàn)豐富的開發(fā)人員,回顧往事,最臭的讓你最受折磨的代碼是什么樣的?也就是說(shuō),請(qǐng)指出一種代碼,如果你能根除掉這種很臭的代碼,那么在你的程序中的大部分設(shè)計(jì)問(wèn)題都會(huì)迎刃而解
  • 我們有如此多的不同的原則和指導(dǎo)來(lái)幫助我們?nèi)?shí)現(xiàn)好的設(shè)計(jì)。對(duì)于一個(gè)新手來(lái)說(shuō),他應(yīng)該從哪里開始?哪種代碼風(fēng)味(code smell)或原則,對(duì)于一個(gè)新手來(lái)說(shuō),可以最大程度的幫助他們做出好的設(shè)計(jì)(節(jié)省好幾年去總結(jié)經(jīng)驗(yàn))?

  盡管字面上這兩個(gè)問(wèn)題很相似,但我認(rèn)為這第二個(gè)問(wèn)題更具有廣泛的意義,跟第一個(gè)有很大的不同。

  不管怎樣,這次研討會(huì)都能稱得上是一個(gè)熱鬧的會(huì)議。我們有不少很厲害的辯手來(lái)批判所謂的最臭的代碼的味道(最臭的臭彈):

  • Corey Haines的觀點(diǎn):重復(fù)的代碼
  • 我的觀點(diǎn):Primitive Obsession(總是使用底層的數(shù)據(jù)結(jié)構(gòu)/原始的數(shù)據(jù)類型,而使用經(jīng)過(guò)更高層抽象過(guò)的數(shù)據(jù)機(jī)構(gòu)或其它可以n倍的減少?gòu)?fù)雜性。這并不只針對(duì)面向?qū)ο蟮木幊獭_@指的是缺乏在應(yīng)該進(jìn)行抽象的數(shù)據(jù)層面上進(jìn)行抽象)
  • Matt Van Vleet 的觀點(diǎn):?jiǎn)我还δ茉瓌t
  • Venkat Subramaniam 的觀點(diǎn):避免寫代碼
  • Jim Weirich (他并沒有出席這次會(huì)議)的觀點(diǎn): 共生性

  我們都認(rèn)為避免寫代碼(只有在沒有其它辦法的時(shí)候才去寫新代碼)是最重要的需要讓每個(gè)開發(fā)人員都認(rèn)識(shí)到的問(wèn)題。大量的重復(fù)的代碼,劣質(zhì)的代碼(存在于各種項(xiàng)目中)積累到今天已經(jīng)無(wú)法統(tǒng)計(jì)了。在很多情況中程序員根本不喜歡去搜尋一下可以利用的程序,他們只知道自己去寫。這就是為什么我們要去以代碼行數(shù)(LoC)來(lái)作為評(píng)審代碼效率和性能的原因。一般來(lái)講,好的程序員的開發(fā)速度會(huì)比一般的程序員的速度快20倍以上,因?yàn)樗麄儗?duì)重復(fù)利用現(xiàn)有代碼的認(rèn)識(shí)完全不在一個(gè)層次上。

  很多人對(duì);Not Invented Here Syndrome(簡(jiǎn)單解釋為開發(fā)團(tuán)隊(duì)不喜歡使用不是自己寫的程序,縮寫為NIHS)“這個(gè)說(shuō)法感到困惑。我個(gè)人認(rèn)為NIHS對(duì)于我們這個(gè)領(lǐng)域里的進(jìn)步有很重要的意義。NIHS體現(xiàn)在設(shè)計(jì)和解決方案層面。Joel 寫了一篇很有趣的博客,題為 In Defense of Not-Invented-Here Syndrome,大家可以參考看看。

  然而,如果當(dāng)大家都認(rèn)為項(xiàng)目里我們必須自己寫點(diǎn)自己的代碼時(shí)候,那么我們最應(yīng)該提防的一件事情是什么呢?SRP 和 Connascence 真的可以幫你實(shí)現(xiàn)高內(nèi)斂的設(shè)計(jì)。如果程序不是高內(nèi)斂的,我們應(yīng)該很容易可以在里面發(fā)現(xiàn)重復(fù)的代碼(至少是概念上的重復(fù)),你也會(huì)發(fā)現(xiàn)只要在設(shè)計(jì)上選擇正確的方式進(jìn)行抽象提取就能很好的解決這種問(wèn)題。所以代碼重復(fù)和Primitive Obsession實(shí)際是相互因果的關(guān)系。

  據(jù)我的經(jīng)驗(yàn),我要補(bǔ)充一下,我曾看到過(guò)有程序并沒有多少的重復(fù),但卻非常讓人難以理解,這是為什么?所以我要提出,只要是代碼進(jìn)行了較好的抽象,它就會(huì)很容易讓人理解和易于推理出其功能。同樣,如果你試圖去消除重復(fù)的代碼,在某一程度上,這里并沒有字面上的重復(fù),但是這里卻存在一個(gè)概念上的重復(fù),那么只有對(duì)它進(jìn)行更高一級(jí)的抽象就能有效的解決這個(gè)問(wèn)題。因此我的結(jié)論是:回顧往日經(jīng)歷, Primitive Obsession 才是針對(duì)低質(zhì)量設(shè)計(jì)最大的難題,也就是所說(shuō)的最臭的臭蛋。

  【英文出處】: Biggest Stinkers

it知識(shí)庫(kù)最臭的臭彈(Biggest Stinkers),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人av一区二区三区 | 99综合| 欧美一级二级在线观看 | 午夜影院中文字幕 | 日韩精品在线观看一区二区三区 | 亚洲精品电影在线观看 | 国产做爰 | 精品国产乱码久久久久久影片 | 免费一级欧美在线观看视频 | 国产一区二区三区精品久久久 | 久草免费在线视频 | 午夜影院在线观看 | 日日操操 | 成年人免费在线视频 | 国产精品视频免费观看 | 欧美日韩在线视频一区 | 麻豆精品久久久 | 成人免费观看男女羞羞视频 | 综合欧美亚洲 | 亚洲一区二区三区四区在线观看 | 亚州国产| 美女一级黄 | 日本欧美国产在线 | 国产精品久久久久久 | 国产精品久久久久aaaa九色 | 国产精品久久久久久久一区二区 | 国产精品美女久久久久aⅴ国产馆 | 天天玩天天操天天干 | 欧美日韩国产在线观看 | 2018国产大陆天天弄 | 国产一区二区在线免费视频 | 日韩在线欧美 | 国产伦一区二区三区四区 | av色站| 亚洲欧洲精品在线 | 伊人最新网址 | 青青青伊人| 久久人人网 | www.一区二区三区 | 精品久久久久久 | 国产精品1区2区3区 一区中文字幕 |