讀古今文學網 > 程序員必讀之軟件架構 > 我們談論組件但編寫類 >

我們談論組件但編寫類

人們一般都理解把軟件當作少量高層次結構單元來考慮的益處。畢竟,這是在一個軟件系統中劃分職責的好方法,當人們討論架構時,你會經常聽到他們談論組件。這就是基於組件的開發2 ,儘管很多人以組件來談論他們的軟件系統,然而代碼通常並未反映出這種結構。這就是軟件架構和依據原則編碼之間會脫節的原因之一:牆上的架構圖說的是一回事,代碼說的卻是另一回事。

2 http://en.wikipedia.org/wiki/Component-based_software_engineering

當你打開一個代碼庫,由於代碼的組織,它往往會反映出另外的結構。軟件系統的架構視圖和代碼之間的映射往往有巨大差異。這就是為什麼有時候你會看到人們忽視架構圖(或文檔),說「代碼是唯一的真相」。喬治·菲爾班克斯(George Fairbanks)在《恰如其分的軟件架構:風險驅動的設計方法》(Just Enough Software Architecture )3 一書中稱之為「模範代碼的差距」。代碼庫的組織真的能幫助或阻礙對架構的理解。

3 http://rhinoresearch.com/book