一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

測(cè)試驅(qū)動(dòng)開發(fā)(TDD)跟敏捷開發(fā)有沖突

  本文是從 TDD leads to an architectural meltdown around iteration three 這篇文章翻譯而來。

  這些話來自于我們的軟件領(lǐng)袖Jim Coplien——上世紀(jì)九十年代最流行的幾本C++著作的作者。原話是這樣的:

嚴(yán)格的按照YAGNI原則的驅(qū)動(dòng)測(cè)試開發(fā)(TDD)會(huì)導(dǎo)致敏捷開發(fā)3次迭代結(jié)構(gòu)的坍塌。

  看到反TDD運(yùn)動(dòng)已經(jīng)形成了一定的氣候,真是讓人感到非常的振奮,我特別喜歡Jim和Bob Martin 之間的爭(zhēng)論,Bob Martin,這出了名的TDD極端主義者,認(rèn)為任何一個(gè)程序員,只要所寫的任何一行代碼沒有使用TDD,就不是一個(gè)專業(yè)的程序員。

  Jim 和 Bob 最近的一次非常有趣的辯論,你可以在InfoQ找到他們的辯論記錄。我很敬佩Jim在面對(duì)Bob時(shí)表現(xiàn)出來的禮貌和克制,因?yàn)楫?dāng)你的觀點(diǎn)和Bob不一致時(shí),他的言論永遠(yuǎn)都讓你難以忍受。

  TDD已經(jīng)讓我糾結(jié)了很久,你可以從InfoQ上發(fā)布的我的一場(chǎng)被叫做Designing for Testability的演講,或從我最近和Hani Suleiman 一起合著的書里看到我對(duì)TDD的某些效果的質(zhì)疑、甚至是反對(duì)。

  我已經(jīng)說過,別指望我會(huì)跟 Bob Martin 唱對(duì)臺(tái)戲。我絕對(duì)沒有意思說你要永遠(yuǎn)別使用TDD,但我相信,TDD所帶來的好處被過度的夸大,軟件社區(qū)的人需要明白,TDD只是一種工具,對(duì)于一種工具,并不是所有的情形下都會(huì)好用。我特別不喜歡TDD極端主義者們的四處鼓噪、妄圖使那些沒有使用TDD的程序員感到沮喪,或使他們認(rèn)為他們現(xiàn)在開發(fā)軟件所使用的方式有什么不對(duì)。

  如果讓我說,我感覺大多數(shù)的TDD極端主義者在各種會(huì)議上說的太多太久了,已經(jīng)不用動(dòng)腦子就能舉例寫出一堆的用來計(jì)算保齡球得分的類和代碼程序。而這些卡通式的小程序很容易,它們讓TDD很風(fēng)光。但是,當(dāng)這些聽眾離開會(huì)場(chǎng)后撓著頭納悶如何讓這種技術(shù)應(yīng)用到自己的真實(shí)工作中時(shí),你不要吃驚。如果你使用TDD去開發(fā)手機(jī)應(yīng)用程序或去跟需要處理遍布三大洲的上百萬的兩階段提交事務(wù)的主框架進(jìn)行交互的程序時(shí),你算是撞上頭彩了。

  我不知道你的感覺如何,反正我是有點(diǎn)厭倦了軟件社區(qū)里的這種危言聳聽 —— 無論它是來自TDD狂熱分子還是來自那些聲稱絕不招聘不使用Mac做開發(fā)的人的人。

  當(dāng)需要進(jìn)行測(cè)試時(shí),我信守下面的經(jīng)驗(yàn)主義的做法:

  • “先測(cè)試”還是“后測(cè)試”并不重要,只要你是在測(cè)試。
  • 在你的開發(fā)過程中盡可能早的考慮測(cè)試。
  • 不要讓某個(gè)框框限制了你的行動(dòng)。例如,不要輕信那些人告訴你的、要寫出“盡可能簡(jiǎn)單的能夠運(yùn)行的程序” —— 也就是所謂的YAGNI —— 的話。如果你的經(jīng)驗(yàn)告訴你,未來你會(huì)用到這個(gè)額外的類 —— 雖然現(xiàn)在用不著,你應(yīng)該相信你的判斷,加上這個(gè)類。
  • 記住,功能測(cè)試是真正對(duì)用戶有意義的測(cè)試。單元測(cè)試只是為你開發(fā)者服務(wù)的。屬于奢侈品。如果你有時(shí)間去寫單元測(cè)試,那最好了:當(dāng)你的程序出現(xiàn)問題時(shí),它們能幫助你省去很多時(shí)間。但如果你沒有時(shí)間,你要確保功能測(cè)試能覆蓋到你的產(chǎn)品里用戶所期望的所有功能點(diǎn)。
  • 如果你沒有做測(cè)試驅(qū)動(dòng)開發(fā),不要有任何的不安。有太多的因素都能導(dǎo)致這種開發(fā)方法在眾多的項(xiàng)目和個(gè)人開發(fā)習(xí)慣中水土不服(有很多因素那些TDD極端主義者們永遠(yuǎn)都不會(huì)提)。

  不要讓那些極端主義者把測(cè)試搞得痛苦不堪,如果你能運(yùn)用自己的判斷來實(shí)踐它們,這將會(huì)成為你職業(yè)表現(xiàn)在最有價(jià)值的品行。

it知識(shí)庫測(cè)試驅(qū)動(dòng)開發(fā)(TDD)跟敏捷開發(fā)有沖突,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 欧美成人高清在线视频大全 | 精品999久久久久久中文字幕 | 美女视频很黄很a免费国产 美女视频黄.免费网址 | 最新97超级碰碰碰碰久久久久 | 亚洲视频一区二区 | 国产成人福利美女观看视频 | 国产91在线精品福利 | 青青草国产97免久久费观看 | 四虎影视国产精品一区二区 | 亚洲香蕉久久一区二区 | 亚洲春色另类小说 | 亚洲国产精品久久久久网站 | 欧美视频在线观看免费播放 | 国产在线视频二区 | 黄色在线视频观看 | 中文字幕一区婷婷久久 | 91精品国产91热久久p | 四虎新网站| 娇小videosbest8另类 | 日本亚洲精品色婷婷在线影院 | 亚洲影视精品 | 人人dvd | 一级爱做片免费观看久久 | 韩国理伦一级毛片 | 日本免费久久久久久久网站 | 欧美三级在线观看视频 | 国产一级做a爰片久久毛片 国产一级做a爰片久久毛片99 | 欧美一级成人免费大片 | 色多多www| 国产视频1 | 国产aⅴ精品一区二区三区久久 | 亚洲香蕉网综合久久 | 亚洲操片 | 婷婷在线视频 | 天天色天天射天天干 | 久艾草国产成人综合在线视频 | 色播视频在线播放 | 成人爽a毛片在线视频 | 国产自线一二三四2021 | 久久精品一 | 91福利网站|