框架不是框框 應用框架的基本思想

2021-04-19 08:49:45 字數 1862 閱讀 8637

軟體構件化是21世紀軟體工業發展的大勢趨。工業化的軟體復用已經從通用類庫進化到了面向領域的應用框架。gartner group認為:「到2023年,至少70%的新應用將主要建立在如軟體構件和應用框架這類『構造塊』之上;應用開發的未來就在於提供一開放體系結構,以方便構件的選擇、組裝和整合」。框架的重用已成為軟體生產中最有效的重用方式之一。然而——

一、構件與框架有何關係?

1. 什麼是框架?

框架(framework)是整個或部分系統的可重用設計,表現為一組抽象構件及構件例項間互動的方法;另一種定義認為,框架是可被應用開發者定製的應用骨架。前者是從應用方面而後者是從目的方面給出的定義。

可以說,乙個框架是乙個可復用的設計構件,它規定了應用的體系結構,闡明了整個設計、協作構件之間的依賴關係、責任分配和控制流程,表現為一組抽象類以及其實例之間協作的方法,它為構件復用提供了上下文(context)關係。因此構件庫的大規模重用也需要框架。

構件領域框架方法在很大程度上借鑑了硬體技術發展的成就,它是構件技術、軟體體系結構研究和應用軟體開發三者發展結合的產物。在很多情況下,框架通常以構件庫的形式出現,但構件庫只是框架的乙個重要部分。框架的關鍵還在於框架內物件間的互動模式和控制流模式。

框架比構件可定製性強。在某種程度上,將構件和框架看成兩個不同但彼此協作的技術或許更好。框架為構件提供重用的環境,為構件處理錯誤、交換資料及啟用操作提供了標準的方法。

應用框架的概念也很簡單。它並不是包含構件應用程式的小片程式,而是實現了某應用領域通用完備功能(除去特殊應用的部分)的底層服務。使用這種框架的程式設計人員可以在乙個通用功能已經實現的基礎上開始具體的系統開發。框架提供了所有應用期望的預設行為的類集合。具體的應用通過重寫子類(該子類屬於框架的預設行為)或組裝物件來支援應用專用的行為。

應用框架強調的是軟體的設計重用性和系統的可擴充性,以縮短大型應用軟體系統的開發周期,提高開發質量。與傳統的基於類庫的物件導向重用技術比較,應用框架更注重於面向專業領域的軟體重用。應用框架具有領域相關性,構件根據框架進行復合而生成可執行的系統。框架的粒度越大,其中包含的領域知識就更加完整。

2. 框架和設計模式

框架、設計模式這兩個概念總容易被混淆,其實它們之間還是有區別的。構件通常是**重用,而設計模式是設計重用,框架則介於兩者之間,部分**重用,部分設計重用,有時分析也可重用。在軟體生產中有三種級別的重用:內部重用,即在同一應用中能公共使用的抽象塊;**重用,即將通用模組組合成庫或工具集,以便在多個應用和領域都能使用;應用框架的重用,即為專用領域提供通用的或現成的基礎結構,以獲得最高端別的重用性。

框架與設計模式雖然相似,但卻有著根本的不同。設計模式是對在某種環境中反覆出現的問題以及解決該問題的方案的描述,它比框架更抽象;框架可以用**表示,也能直接執行或復用,而對模式而言只有例項才能用**表示;設計模式是比框架更小的元素,乙個框架中往往含有乙個或多個設計模式,框架總是針對某一特定應用領域,但同一模式卻可適用於各種應用。可以說,框架是軟體,而設計模式是軟體的知識。

二、為什麼要進行框架開發?

框架的最大好處就是重用。物件導向系統獲得的最大的復用方式就是框架,乙個大的應用系統往往可能由多層互相協作的框架組成。

由於框架能重用**,因此從一已有構件庫中建立應用變得非常容易,因為構件都採用框架統一定義的介面,從而使構件間的通訊簡單。

框架能重用設計。它提供可重用的抽象演算法及高層設計,並能將大系統分解成更小的構件,而且能描述構件間的內部介面。這些標準介面使在已有的構件基礎上通過組裝建立各種各樣的系統成為可能。只要符合介面定義,新的構件就能插入框架中,構件設計者就能重用構架的設計。

框架還能重用分析。所有的人員若按照框架的思想來分析事務,那麼就能將它劃分為同樣的構件,採用相似的解決方法,從而使採用同一框架的分析人員之間能進行溝通。

採用框架技術進行軟體開發的主要特點包括:

框架不是框框 應用框架的基本思想

軟體構件化是21世紀軟體工業發展的大勢趨。工業化的軟體復用已經從通用類庫進化到了面向領域的應用框架。gartner group認為 到2003年,至少70 的新應用將主要建立在如軟體構件和應用框架這類 構造塊 之上 應用開發的未來就在於提供一開放體系結構,以方便構件的選擇 組裝和整合 框架的重用已成...

框架不是框框 應用框架的基本思想

軟體構件化是21世紀軟體工業發展的大勢趨。工業化的軟體復用已經從通用類庫進化到了面向領域的應用框架。gartner group認為 到2003年,至少70 的新應用將主要建立在如軟體構件和應用框架這類 構造塊 之上 應用開發的未來就在於提供一開放體系結構,以方便構件的選擇 組裝和整合 框架的重用已成...

框架不是框框 應用框架的基本思想

軟體構件化是21世紀軟體工業發展的大勢趨。工業化的軟體復用已經從通用類庫進化到了面向領域的應用框架。gartner group認為 到2003年,至少70 的新應用將主要建立在如軟體構件和應用框架這類 構造塊 之上 應用開發的未來就在於提供一開放體系結構,以方便構件的選擇 組裝和整合 框架的重用已成...