1.描述軟體架構與框架之間的區別與聯絡
答: 軟體架構:
- 是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。軟體架構描述的物件是直接構成系統的抽象元件。各個元件之間的連線則明確和相對細緻地描述元件之間的通訊。
- 在實現階段,這些抽象元件被細化為實際的元件,比如具體某個類或者物件。在物件導向領域中,元件之間的連線通常用介面來實現。
軟體框架:
- 指在一定的設計原則基礎上,從不同角度對組成系統的各部分進行搭配和安排,形成系統的多個結構而組成架構,它包括該系統的各個元件,元件的外部可見屬性及元件之間的相互關係。
- 是一種特殊的軟體,它並不能提供完整無缺的解決方案,而是為你構建解決方案提供良好的基礎。框架是半成品。典型地,框架是系統或子系統的半成品;框架中的服務尅被最終應用系統直接呼叫,而框架中的擴充套件點是**用開發人員定製的「可變化點」。
綜上,可總結出,兩者區別在於:
①框架落腳在「架」字上,可以理解成名詞性的,是乙個客觀性的名詞存在,如.net framework;而架構體現在「構」字上,理解成構造,是乙個動詞性的,是一系列動作發生的策略性體現。
②架構和框架在軟體設計中是兩個不同的研究領域。架構給出軟體的整體結構和設計,可以被不同的框架和被不同的語言所實現;
而框架則是乙個應用的體系結構,是一種或多種設計模式和**的混合體雖然它們有所不同,但卻共同致力於使人們的設計可以被重用,在思想上存在著統一性的特點。
2.以你的專案為案例,繪製三層架構模型圖,細緻到分割槽;
答: ①
結合你程式的結構,從程式設計師角度說明三層架構給開發者帶來的便利
- 層次清晰,每個層次都提供了介面定義
- 降低了**之間,層與層的依賴關係
- 復用性:利於各層**邏輯的復用
- 安全性:介面設計需要符合對擴充套件開發,對修改關閉的原則,增強了系統的安全性
3.研究 vue 與 flux 狀態管理的異同
答: vue的狀態管理:vuex 是乙個專為 vue.js 應用程式開發的狀態管理模式。它採用集中式儲存管理應用的所有元件的狀態,並以相應的規則保證狀態以一種可**的方式發生變化。
即 把需要共享的變數全部儲存在乙個物件裡面,然後將這個物件放在頂層元件中供其他元件使用。
flux 的狀態管理:狀態集管理框架,由facebook建立,專門用來構建前端框架結構的框架,便於維護,用於安全考慮。它分為四層:view檢視層 action層 dispatcher派發層 store倉庫層。
總結:
①vuex是對flux的基礎實現上進行改變,對倉庫的管理更加明確
②vuex把action細分成了action和mutation,分別應對非同步場景和同步場景,由store自身充當dispatcher
③vuex中使用mutation來替換reducer
④vuex有自動渲染的功能,所以不需要更新
系統分析與設計Lesson13
軟體架構就是把系統分解為一些部件,描述這些部件的職責及它們之間的協作行為。架構模式 style 是 特定領域常見問題的解決方案。框架 framework 是整個或部分系統的可重用設計,表現為一組抽象構件及構件例項間互動的方法 另一種定義認為,框架是可被應用開發者定製的應用骨架。前者是從應用方面而後者...
系統分析與設計 lesson13
研究 vue 與 flux 狀態管理的異同 flux 是 facebook 系統化的一套響應式程式設計架構方案,用於解決 mvc 中某些依賴複雜的情況。vuex 其實是乙個針對 vue 特化的 flux,主要是為了配合 vue 本身的響應式機制。當然吸取了一些 redux 的特點,比如單狀態樹和便於...
系統分析與設計Lesson13(第八次作業)
軟體架構 軟體架構是乙個系統的草圖,把系統分解為一些部件,描述這些部件的職責及它們之間的協作行為。架構是一組重要決策,其中涉及軟體系統的組織,對結構元素及其組成系統所籍介面的選擇,這些元素特定於其相互協作的行為,這些結構和行為元素到規模更大的子系統的組成,以及指導該組織結構 這些元素及其介面 協作和...