一個良好的開發理念TDD
TDD(Test-Driven Development)即測試驅動開發,是一種開發理念。 這個理念一聽似乎不錯,也很簡單。 可實際即使大家知道這個理念,卻不能很好的遵循它。 專案有客戶要求的最後期限,本身就有很多事情要做,還要花費額外的時間去測試、開發、測試這樣的迴圈操作,基本上關於TDD的想法很快就會被拋棄。 一開始專案小可能影響不大,隨著時間,專案內容增多、程式碼變得糟糕,直到增加新功能也變得困難起來,才想起來要是做好TDD就不會有那麼多技術債了。
程式設計師永遠寫不出沒有BUG的程式碼,而測試可以暴露問題所在,揭示可能出現的結果,從而降低BUG出現的可能性。 心理學上講,TDD大大降低了開發過程中的壓力,因為每一步程式碼都是經過驗證的,從而不必擔心問題會累積到一塊。而且這還有助於編寫賞心悅目的程式碼,慢工出細活嘛。 為了做好這個細活,一定需要程式設計師先思考再編寫,側面上還能培養一個良好的程式設計習慣:先思考得出整體的計劃,再去執行。也應了那句話,大膽假設,小心求證。
很多測試看起來往往是多此一舉,像是浪費時間。一個能預料的結果,還需要寫一個測試,其實這都是主觀效果,而BUG總是出現在主觀意念最強的地方。你以為正確反而最可能出錯。要做好TDD,心態一定不能著急。 書中提到,要用好TDD,就要記住測試山羊。測試山羊是 TDD 的非官方吉祥物。它總是一步步走向陡峭的山峰。其實就是我們常說的一步一個腳印。 也只有一步一個腳印,使用好TDD理念,心中想著:先測試,先測試!”。才能穩妥的實現我們共同的神聖目標—簡潔可用的程式碼。
這本書會從零開始講 Django、Selenium、jQuery 和 Mock 等工具開發一個 Web 應用,教導大家體驗一次完整Web開發,並掌握TDD理念。
TDD最為關鍵的特徵就是:第一步始終是“編寫測試”。首先要編寫測試,然後執行,看是否和預期一樣失敗,只有失敗了才能繼續下一步。 為什麼失敗了才繼續下一步,因為我們程式設計師喜歡throw error。
相關文章
- Node js TDD開發的起手式JS
- 探索 Android TDD 開發方法Android
- 良好交易策略構建的思路與一個有效的量化交易系統開發
- IRC vs IRL:如何召開一個良好的 IRC 會議
- 使用一個Oracle MySQL的理念OracleMySql
- 幽默:如何建立一個良好的關係?
- 如何設計一個良好的API介面?API
- [譯] 獨自開發時一些良好的工程實踐
- 用 TDD 的方式為 Laravel 開發擴充套件Laravel套件
- TDD(測試驅動開發)死了嗎?
- 怎麼建立一個良好的Git提交資訊Git
- 測試驅動開發(TDD)例項演示
- TDD 實踐-FizzFuzzWhizz(一)
- 測試驅動開發(TDD)實戰心得 - DeniMoka
- 測試驅動開發(TDD)總結——原理篇
- 用後臺開發的邏輯理念學習VUEVue
- 變異測試是測試驅動開發(TDD)的演變
- 測試驅動開發(TDD)—— 資料庫查詢篇資料庫
- 一個Wpf的開發框架框架
- 開發一個自己的 CSS 框架(一)CSS框架
- 採用測試驅動開發理念(Test Driven Development)進行 SAP UI5 應用的功能開發(一)devUI
- Swift 進階開發指南:如何使用 Quick、Nimble 執行測試驅動開發(TDD)SwiftUI
- 使用 TDD 測試驅動開發來構建 Laravel REST APILaravelRESTAPI
- 測試驅動開發TDD | IDCF FDCC認證學員作品
- 開發一個MutatingWebhookWebHook
- 構建良好雲平臺的7個步驟
- 幽默:TDD揭示了資料庫應用背後一個骯髒的真相 - Adam資料庫
- 前端進階之養成一個良好的程式碼風格--JavaScript standard style前端JavaScript
- 技術管理的一些理念
- 如何開發一個免費的app?APP
- golang開發一個簡單的grpcGolangRPC
- TDD 完成有感
- 從頭開發一個Flutter外掛(一)開發流程Flutter
- Go 語言:透過TDD測試驅動開發學習 Mocking (模擬)的思想GoMock
- 微前端 – 將微服務理念延伸到前端開發中前端微服務
- 敏捷個人-做好一個開發者敏捷
- JavaScript程式碼組織結構良好的5個特點JavaScript
- iOS上開發的一個安全鍵盤iOS