10|TDD中的驅動(3):何為經典學派?何為倫敦學派?
重構到模式,或者說 TDD 紅 / 綠 / 重構循環中的重構,是在完成功能的前提下以演進的方式進行設計。這是延遲性決策策略,也叫最晚盡責時刻(Last Responsible Moment,LRM)。也就是說,與其在信息不足的情況下做決定,不如延遲到信息更多,或是不得不做出決策的時機再決策。這種策略的重點在于,在保持決策有效性的前提下,盡可能地推遲決策時間。
如果架構愿景不清晰,那么“最晚盡責時刻”讓我們不必花費時間進行空對空的討論,可以盡早開始實現功能,再通過重構從可工作的軟件(Working Software)中提取架構。這種方式也被稱作 TDD 的經典學派(Classic School)或芝加哥學派(Chicago School)。
除了經典學派之外,還有一種 TDD 風格,被稱作 TDD 的倫敦學派(London School)。如果架構愿景已經比較清晰了,那么我們就可以使用倫敦學派進行 TDD。