※ 引述《Wolfken ()》之銘言:
: ※ 引述《abadcafe (abadcafe)》之銘言:
: : 另外, 關於敏捷我要多說一句, 敏捷不是銀彈. 真的在大項目中實行一遍TDD, 你就知道
: : TDD的問題在哪裏了: 1. 工作量暴增. 2. 面對頻繁變化的需求, 你會很快厭倦編寫那麼多
: : 測試代碼然後又看着這些代碼作廢. 這都是人力的浪費. 你看看前幾年TDD有多火, 近幾年
: : 又如何? DHH當初那麼推崇TDD, 現在又如何? 敏捷的思想很重要. 但敏捷的具體方法, 無
: : 論TDD還是SCRUM, 都需要推敲. 不過這是另一個話題了, 歡迎另開一串討論.
: DHH後來被砲得很慘呀,他也承認他有點過頭了,TDD還是很重要
: 另外所謂"頻繁變化的需求",用Agile不代表你可以無止盡的變需求
: 它歡迎改變,但還是有改變相對應的成本,一直改的話團隊產出就會降低
: 更重要的是,一直改代表project manager根本沒做好他的工作
: 用了agile不代表project management就可以丟了
TDD 在寫全新程式碼時,是個不錯的流程「指導」工具;如果常常出
現「測試代碼作廢」的現象,那個應該是果;因是出在別的地方。
然而,在面對既有程式碼(legacy code) 時, TDD 通常是災難的開
始;然而,這通常也不是 TDD 本身的問題,而是既有程式碼本身就
不適合 TDD ,必須先花時間重構。
============================================================
waterfall 本身也是沒問題;在進行「純軟體」專案時,可以採用 agile
;然而,若是「軟、硬(infrastructure)」並行的案子時,因為物理
現實的條件限制,硬體建設的部分很有可能必須採用 waterfall 方
式,無法像軟體一樣用迭代式(iterative) 的開發方式
============================================================
devops 的精神與遠景是好的,但實務上常常變成: 原本「一猴撞一
天鐘,拿一隻蕉」,現在變成「一猴撞一天鐘挑一天水掃一天地,還
是只拿一隻蕉」的藉口
============================================================
TDD, waterfall, agile, SCRUM, devops, 這些流程工具本身的精神
都是好的,但總是有些人有無盡的創意找到辦法來濫用、誤用這些工
具,然後再來怪工具不好 :D