????? 軟件復用程度的級別可以按以下準則來衡量(級別從低到高):
(1)函數:將那些重復或者類似的程序集中起來放在函數里,對外提供參數以利復用,是功能型的重用;
(2)實在類:將若干經常使用的函數集中起來,將函數的參數轉化為類的成員變量,自定義構造和銷毀函數,是資源型的重用;
(3)抽象類:使用純虛函數對外提供接口,這些接口僅僅聲明了基類的功能,而將實現拖延到子類中去,是強調可變性的資源型重用;
(4)包:將若干耦合度較大的類集中起來,統一地對外提供接口,是一種有機的資源型重用;
(5)模板:將變量的類型通用化,它是一種強調通用性的資源型重用,可以應用在上面四個層次上;
(6)組件:封裝了數據和方法的可執行代碼,上面五種都屬于代碼級的復用,而組件屬于軟件級的重用。