系統分析與設計Lesson13(第八次作業)

2021-08-20 11:50:02 字數 1907 閱讀 9191

軟體架構:軟體架構是乙個系統的草圖,把系統分解為一些部件,描述這些部件的職責及它們之間的協作行為。架構是一組重要決策,其中涉及軟體系統的組織,對結構元素及其組成系統所籍介面的選擇,這些元素特定於其相互協作的行為,這些結構和行為元素到規模更大的子系統的組成,以及指導該組織結構(這些元素及其介面、協作和組成)的架構風格。

軟體框架:軟體框架是特定語言和技術的架構應用解決方案。面向領域(如erp、計算領域等)的、可復用的「半成品」軟體,它實現了該領域的共性部分,並提供了一些定義良好的可變點以保證靈活性和可擴充套件性。也就是說軟體框架是領域分析結果的軟體化,是領域內最終應用的模板。

區別

框架是一種特殊的軟體,它並不能提供完整無缺的解決方案,而是為你構建解決方案提供良好的基礎。框架是半成品。典型地,框架是系統或子系統的半成品;框架中的服務可以被最終應用系統直接呼叫,而框架中的擴充套件點是**用開發人員定製的「可變化點」。

軟體架構不是軟體,而是關於軟體如何設計的重要決策。軟體架構決策涉及到如何將軟體系統分解成不同的部分、各部分之間的靜態結構關係和動態互動關係等。經過完整的開發過程之後,這些架構決策將體現在最終開發出的軟體系統中;當然,引入軟體框架之後,整個開發過程變成了「分兩步走」,而架構決策往往會體現在框架之中。

聯絡

軟體架構是引導如何設計軟體框架的重要決策。它決定了軟體系統如何劃分,在一定程度上描述了被劃分的各個部分之間的靜態、動態關係。軟體架構的決策體現在軟體系統的框架中。總而言之,軟體架構指導軟體框架的設計,而軟體框架是一種或多種架構的組合的實現

繪製三層架構模型圖,細緻到分割槽

結合你程式的結構,從程式設計師角度說明三層架構給開發者帶來的便利

便於對開發工作進行有效正確的分工

便於了解整個專案各個層次間的聯絡與區別

易於用新的實現代替原有層次的實現,利於各層邏輯的復用。

降低層與層之間的依賴

極大地降低了維護成本和維護時間

便於進行並行開發

vue:

vue使用vuex來管理所有元件狀態,每乙個vuex應用就是乙個store,在store中包含元件中的共享狀態state和改變狀態的方法mutations。當開發大型單頁應用(spa),會出現多個檢視元件依賴同乙個狀態,來自不同檢視的行為需要變更同乙個狀態的情況,此時就應該考慮使用vuex,它能把元件的共享狀態抽取出來,當做乙個全域性單例模式進行管理。這樣不管在何處改變狀態,vuex都會通知使用該狀態的元件做出相應修改。

flux:

flux將乙個應用分成四個部分:

①view(檢視層)

②action(動作層)

③dispatcher(派發器)

④store(資料層)

flux使用資料層儲存整個應用的狀態,一旦發生變動,就提醒views要更新頁面。

相同點:

①都通過store來儲存狀態

②都基於flux

③都提供資料驅動、可組合搭建的檢視元件。

不同點:

flux:

flux資料流的順序是:view發起action->action傳遞到dispatcher->dispatcher將通知store->store的狀態改變通知view進行改變

vue:

vuex資料流的順序是:view呼叫store.commit提交對應的請求到store中對應的mutation函式->store改變生成新的state(vue檢測到資料變化自動渲染)

系統分析與設計 lesson13

1.描述軟體架構與框架之間的區別與聯絡 答 軟體架構 是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。軟體架構描述的物件是直接構成系統的抽象元件。各個元件之間的連線則明確和相對細緻地描述元件之間的通訊。在實現階段,這些抽象元件被細化為實際的元件,比如具體某個類或者物件。在物件導向領域中,...

系統分析與設計Lesson13

軟體架構就是把系統分解為一些部件,描述這些部件的職責及它們之間的協作行為。架構模式 style 是 特定領域常見問題的解決方案。框架 framework 是整個或部分系統的可重用設計,表現為一組抽象構件及構件例項間互動的方法 另一種定義認為,框架是可被應用開發者定製的應用骨架。前者是從應用方面而後者...

系統分析與設計 lesson13

研究 vue 與 flux 狀態管理的異同 flux 是 facebook 系統化的一套響應式程式設計架構方案,用於解決 mvc 中某些依賴複雜的情況。vuex 其實是乙個針對 vue 特化的 flux,主要是為了配合 vue 本身的響應式機制。當然吸取了一些 redux 的特點,比如單狀態樹和便於...