大規模軟件的特點
大規模軟件主要特點是復雜度。比較典型的例子是集成性的項目。軟件系統需要將各種各樣的硬件、遺留系統、外部接口整合起來。其間可能遇到不同的硬件接口,不同的操作系統,不同的語言,不同的平臺,不同的數據庫,不同的消息中間件,不同的網絡介質。這些都使得系統變得非常的復雜.
面向對象技術的特點是通過對象之間的職責分工和高度協作來完成任務。這樣的好處是代碼量較少,系統布局合理,重用程度高。但是當對象的個數大量增加的時候,對象之間的高度耦合的關系將會使得系統變得復雜,難以理解。
以前對于這個問題的方法是采用包(請參考拙作面向對象軟件開發中對包的相關討論)作為容器來組織對象,對象之間的依賴性將轉化為包之間的依賴性。這種方法聽起來有道理,但是在實際中仍會出現難以解決的問題。
包僅僅只是容器。這意味著對對象的組織可以是任意的,而包之間依賴關系的設計則還是取決于對象的依賴。此外,包的設計和對象一樣,缺乏一個統一的風格。而統一的風格正是大規模軟件設計所必須的,因為這樣可以有效改進系統的可理解性,這一點非常重要。
面向組件編程
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/