框架(Framework)是整個或部分系統(tǒng)的可重用設計,表現(xiàn)為一組抽象構件及構件實例間交互的方法;另一種定義認為,框架是可被應用開發(fā)者定制的應用骨架。前者是從應用方面而后者是從目的方面給出的定義。
可以說,一個框架是一個可復用的設計構件,它規(guī)定了應用的體系結構,闡明了整個設計、協(xié)作構件之間的依賴關系、責任分配和控制流程,表現(xiàn)為一組抽象類以及其實例之間協(xié)作的方法,它為構件復用提供了上下文(Context)關系。因此構件庫的大規(guī)模重用也需要框架。
構件領域框架方法在很大程度上借鑒了硬件技術發(fā)展的成就,它是構件技術、軟件體系結構研究和應用軟件開發(fā)三者發(fā)展結合的產物。在很多情況下,框架通常以構件庫的形式出現(xiàn),但構件庫只是框架的一個重要部分??蚣艿年P鍵還在于框架內對象間的交互模式和控制流模式。