一、軟體體系結構和框架的定義
軟體體系結構的英文單詞是「architecture」. architecture的基本詞義是建築、建築學、建築風格。
軟體體系結構雖然根植於軟體工程,但還處於乙個研究發展的階段,迄今為止還沒有乙個為大家所公認的定義。
《設計模式》中對框架的定義是框架就是一組相互協作的類,對於特定的一類軟體,框架構成了一種可重用的設計。
軟體框架是專案軟體開發過程中提取特定領域軟體的共性部分形成的體系結構,不同領域的軟體專案有著不同的框架型別。框架的作用在於:由於提取了特定領域軟體的共性部分,因此在此領域內新專案的開發過程中**不需要從頭編寫,只需要在框架的基礎上進行一些開發和調整便可滿足要求;對於開發過程而言,這樣做會提高軟體的質量,降低成本,縮短開發時間,使開發越做越輕鬆,效益越做越好,形成一種良性迴圈。
框架不是現成可用的應用系統。是乙個半成品,需要後來的開發人員進行二次開發,實現具體功能的應用系統。框架不是「平台」,平台概念比較模糊可以是一種作業系統,一種應用伺服器,一種資料庫軟體,一種通訊中介軟體等地那個,因此平台在應用平台主要指提供特定服務的系統軟體,而框架更側重了設計,開發過程,或者可以說,框架通過呼叫平台提供的服務而起的作用。
框架不是工具包或者類庫,呼叫api並不就是在使用框架開發,緊緊使用api是,開發者完成系統的主題部分,並不時地呼叫類庫實現特定任務。而框架構成了通用的、具有一般性的系統主體部分,二次開發人員只是像做填空一樣,根據具體業務,完成特定應用系統中與眾不同的特殊部分。
二、框架與架構之間的關係
框架不是構架(即軟體體系機構)。體系結構確定了系統整體結構、層次劃分,不同部分之間的協作等設計考慮。框架比架構更具體。更偏重於技術涉嫌。確定框架後,軟體體系結構也隨之確定,而對於同一軟體體系結構(比如web開發中的mvc),可以通過多種框架來實現。
三、框架與設計模式之間的關係
設計模式和框架在軟體設計中是兩個不同的研究領域。設計模式研究的是乙個設計問題的解決方法,乙個模式可應用於不同的框架和被不同的語言所實現;而框架則是乙個應用的體系結構,是一種或多種設計模式和**的混合體雖然它們有所不同,但卻共同致力於使人們的設計可以被重用,在思想上存在著統一性的特點,因而設計模式的思想可以在框架設計中進行應用。
框架和設計模式存在著顯著的區別,主要表現在二者提供的內容和致力應用的領域。
1)、從應用領域上分,框架給出的是整個應用的體系結構;而設計模式則給出了單一設計問題的解決方案,並且這個方案可在不同的應用程式或者框架中進行應用。
2)、從內容上分,設計模式僅是乙個單純的設計,這個設計可被不同語言以不用方式來實現;而框架則是設計和**的乙個混合體,程式設計者可以用各種方式對框架進行擴充套件,進而形成完整的不同的應用。
3)、以第二條為基礎,可以得出設計模式比框架更容易移植:框架一旦設計成形,雖然還沒有構成完整的乙個應用,但是以其為基礎進行應用的開發顯然要受制於框架的實現環境;而設計模式是與語言無關的,所以可以在更廣泛的異構環境中進行應用。
總之,框架是軟體,而設計模式是軟體的知識體,提公升框架的設計水平。
**:
PageObject框架設計模式
page object設計模式是selenium自動化測試專案的最佳設計模式之一,強調測試 邏輯 資料和驅動相互分離。page object模式是selenium中的一種測試設計模式,主要是將每乙個頁面設計為乙個class,其中包含頁面中需要測試的元素 按鈕,輸入框,標題等 這樣在selenium測...
架構 框架 設計模式之間的關係簡述
一 軟體體系結構和框架的定義 軟體體系結構的英文單詞是 architecture architecture的基本詞義是建築 建築學 建築風格。軟體體系結構雖然根植於軟體工程,但還處於乙個研究發展的階段,迄今為止還沒有乙個為大家所公認的定義。設計模式 中對框架的定義是框架就是一組相互協作的類,對於特定...
架構 框架 設計模式之間的關係簡述
本文向您講解架構 框架和設計模式之間的關係,框架是軟體,框架比架構更具體,更偏重於技術涉嫌。而設計模式是軟體的知識體,提公升框架的設計水平 一 軟體體系結構和框架的定義 軟體體系結構的英文單詞是 architecture architecture的基本詞義是建築 建築學 建築風格。軟體體系結構雖然根...