一個良好的開發理念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。
相關文章
- 拒絕測試驅動開發(TDD)的10個理由
- Node js TDD開發的起手式JS
- 良好交易策略構建的思路與一個有效的量化交易系統開發
- 使用一個Oracle MySQL的理念OracleMySql
- 養成良好的開發習慣
- 如何設計一個良好的API?API
- 測試驅動開發(TDD)的思考
- 探索 Android TDD 開發方法Android
- 如何設計一個良好的API介面?API
- 幽默:如何建立一個良好的關係?
- [譯] 獨自開發時一些良好的工程實踐
- TDD---測試驅動開發,簡單的一點認識
- 怎麼建立一個良好的Git提交資訊Git
- 用 TDD 的方式為 Laravel 開發擴充套件Laravel套件
- TDD(測試驅動開發)死了嗎?
- 利用雙環 TDD 進行由外向內的開發
- 是否使用TDD(測試驅動開發)進行UI開發UI
- 測試驅動開發(TDD)跟敏捷開發有衝突敏捷
- 測試驅動開發(TDD)例項演示
- 放棄測試優先式開發(TDD)
- 測試驅動開發(TDD)實戰心得 - DeniMoka
- TDD 實踐-FizzFuzzWhizz(一)
- 用後臺開發的邏輯理念學習VUEVue
- Kent Beck 的《測試驅動開發》(TDD) Money示例Ruby版
- J2EE開發時的包命名規則,養成良好的開發習慣
- 測試驅動開發(TDD)總結——原理篇
- 一個Wpf的開發框架框架
- 變異測試是測試驅動開發(TDD)的演變
- 開發一個自己的 CSS 框架(一)CSS框架
- Scrum敏捷軟體開發之技術實踐——測試驅動開發TDDScrum敏捷
- 採用測試驅動開發理念(Test Driven Development)進行 SAP UI5 應用的功能開發(一)devUI
- 測試驅動開發(TDD)—— 資料庫查詢篇資料庫
- 開發一個完整的JavaScript元件JavaScript元件
- 如何開發一個自己的 RubyGem?
- 重視B/S架構系統的發展和開發設計理念架構
- TDD學習筆記【一】----序言筆記
- 使用 TDD 測試驅動開發來構建 Laravel REST APILaravelRESTAPI
- 敏捷開發是一個什麼樣的開發模式敏捷模式