嗨!我最近嘗試在C#
中開發一個小型項目,在整個項目中,我們的團隊使用測試驅動開發(TDD
)技術(xunit, moq
)。C++&正確的TDD
我真的覺得這很棒,因爲(當與C#
配對時)這種方法允許在編碼時放鬆,在重構時放鬆和放鬆。我懷疑所有這些東西實際上簡化了編碼過程,並且它允許(最終,對我來說)以較少的腦細胞工作獲得相同的結果。
之後當我嘗試使用TDD
搭配C++
(我用Google Test
和Google Mock
庫),而且,我也不知道爲什麼,但我倒認爲TDD這裏是退後一步,在快速應用開發方面。
我有些時候不得不花費大量時間思考我的測試,建立適當的嘲笑,重建它們並在我的顯示器上發誓。
而且,我顯然不能問「我做錯了什麼?或者「我的方法出了什麼問題?」,因爲我不知道要描述什麼。但是,如果有人已經習慣TDD
在C++
(也可能是C#
),你能否告訴我如何正確地做到這一點。
框架建議,架構方法,普通的編碼建議 - 如果您有TDD & C++
的經驗,請回復。
你能描述一下你用於C#的設置和C++&gmoc&gtest的設置之間最惱人的區別是什麼?我在C++中使用了gdock + gtest for TDD,但是我看不到這個工具有任何缺陷,但是我沒有在C#中使用xunit + moq(地獄,我沒有用C#編寫這麼多),所以我可能不知道我錯過了什麼。 – chalup 2010-05-25 15:47:04
嗯,我認爲'jalf'實際上寫了我的意見。我不能用比他更好的語言來解釋這些,但是當你用C#編寫代碼並編寫所有界面的東西等等時,它看起來很「天生」。當你試圖在C++中做同樣的事情時,它開始看起來像你試圖強迫自己使用一些非常古怪的東西。也許這只是關於經驗,並習慣以正確的方式思考。 – 2010-05-25 19:55:44