最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Clean Code 無(wú)瑕的程式碼 第9章 單元測(cè)試

2021-06-17 23:08 作者:tkchenhaha  | 我要投稿

? ? ? ?第九章是非常重要的一章!作者提到了測(cè)試驅(qū)動(dòng)程式開(kāi)發(fā)(Test Driven Development)。說(shuō)到「測(cè)試」兩字,給人的印象是重要性不如正式的產(chǎn)品程式,通常測(cè)試程式寫完立刻就會(huì)被丟棄。測(cè)試驅(qū)動(dòng)程式開(kāi)發(fā)的寫法產(chǎn)品程式與測(cè)試程式的關(guān)係如同太極圖的陰與陽(yáng)同樣重要,兩者是對(duì)立又相依的關(guān)係。

TDD的三大法則

第一法則:在寫一個(gè)單元測(cè)試前,不寫產(chǎn)品程式。

第二法則:只寫剛好無(wú)法通過(guò)的單元測(cè)試。

第三法則:只寫剛好能通過(guò)測(cè)試失敗的產(chǎn)品程式。

說(shuō)人話吧!傳統(tǒng)軟體開(kāi)發(fā)方法是先寫產(chǎn)品程式,再寫測(cè)試程式。測(cè)試驅(qū)動(dòng)程式開(kāi)發(fā)先寫測(cè)試程式,再寫產(chǎn)品程式。

此處的測(cè)試程式是每的小單元都有測(cè)試程式,測(cè)試程式只比產(chǎn)品程式早幾秒寫,幾乎是兩者同時(shí)開(kāi)發(fā)。

讓測(cè)試程式整潔

作者分享自己的工作經(jīng)驗(yàn),測(cè)試程式依然要保持整潔,不然到最後雜亂無(wú)章的測(cè)試程式也會(huì)被拋棄。沒(méi)有測(cè)試程式之後就會(huì)出現(xiàn)惡性循環(huán),變成不敢修改產(chǎn)品程式導(dǎo)致軟體品質(zhì)下降。

作者認(rèn)為測(cè)試程式與產(chǎn)品程式一樣重要。

測(cè)試帶來(lái)更多的好處

測(cè)試程式讓產(chǎn)品程式保持?jǐn)U充性、可維護(hù)性。有測(cè)試程式讓人不怕修改軟體程式。

整潔的測(cè)試

可讀性最重要,測(cè)試程式要寫得簡(jiǎn)單明瞭。

9-1是錯(cuò)誤示範(fàn),寫得太複雜。

9-2是重構(gòu)之後簡(jiǎn)潔的範(fàn)例。

每個(gè)測(cè)試程式單元呈現(xiàn)了建造、操作、檢查三個(gè)部分。

範(fàn)例中assert開(kāi)頭的函數(shù)是測(cè)試程式

特定領(lǐng)域的測(cè)試語(yǔ)言

測(cè)試程式寫多了可以演化出測(cè)試API。

雙重標(biāo)準(zhǔn)

測(cè)試程式注重可讀性,可以犧牲效率。

一個(gè)測(cè)試一次斷言(Assert)

斷言數(shù)量越少越好。

一個(gè)測(cè)試一個(gè)概念

相當(dāng)於一個(gè)測(cè)試不要測(cè)試太多項(xiàng)目。

FIRST

整潔的測(cè)試遵循五個(gè)法則

Fast

測(cè)試程式執(zhí)行快速

Independent

每個(gè)測(cè)試程式能夠獨(dú)立運(yùn)行,不用管其他測(cè)試程式

Repeatable

任何系統(tǒng)環(huán)境都能夠執(zhí)行測(cè)試程式

Self-Validating?

測(cè)試程式的輸出是對(duì)或錯(cuò)(true or false)

Timely

測(cè)試程式要在產(chǎn)品程式「之前不久」撰寫

總結(jié)

測(cè)試程式與產(chǎn)品程式同等重要,甚至更重要。測(cè)試程式腐化會(huì)導(dǎo)致產(chǎn)品程式接著腐化,引發(fā)惡性循環(huán)。

我覺(jué)得測(cè)試驅(qū)動(dòng)程式開(kāi)發(fā)(Test Driven Development)是好東西,無(wú)奈要實(shí)際運(yùn)作有很大的困難,通常軟體公司的每個(gè)人進(jìn)度都被安排好,不可能再安排時(shí)間再寫詳盡的測(cè)試程式,更何況做到本章節(jié)所言測(cè)試先行、測(cè)試程式與產(chǎn)品程式同時(shí)開(kāi)發(fā)。

雖然如此有機(jī)會(huì)「制度環(huán)境許可」的情況下,還是試試看測(cè)試驅(qū)動(dòng)程式開(kāi)發(fā)(Test Driven Development)的寫作方法。


Clean Code 無(wú)瑕的程式碼 第9章 單元測(cè)試的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
三门县| 无锡市| 通道| 吴堡县| 南宫市| 临桂县| 东莞市| 来宾市| 株洲县| 土默特右旗| 建水县| 五家渠市| 嘉义县| 太仓市| 中阳县| 达尔| 肥乡县| 筠连县| 宁国市| 大足县| 河曲县| 陆川县| 杭锦后旗| 东城区| 西和县| 东安县| 房山区| 武汉市| 古交市| 大宁县| 株洲县| 鄂尔多斯市| 耒阳市| 安多县| 遂宁市| 华亭县| 乐亭县| 衢州市| 万荣县| 六枝特区| 宁武县|