什麼是VIPER 架構模式

2021-08-02 01:43:23 字數 786 閱讀 7934

從字面意思來理解,viper 即 view interactor presenter entity router(展示器(檢視) 互動器 協調器 實體(資料) 路由器),迄今為止,劃分責任的粒度是很好的選擇。viper 在責任劃分層面進行 了迭代,viper 分為五個層次:

展示器 -- 包含 ui 層面的業務邏輯以及在互動器層面的方法呼叫。

互動器 -- 包括關於資料和網路請求的業務邏輯,例如建立乙個實體(資料),或者從伺服器中獲取一些資料。為了實現這些功能,需要使用服務、管理器,但是他們並不被認為是 viper 架構內的模組,而是外部依賴。

實體 -- 普通的資料物件,不屬於資料訪問層次,因為資料訪問屬於互動器的職責。

路由器 -- 用來連線 viper 的各個模組。

1)viper 模式下的三個特性的分析:

任務均攤 -- 毫無疑問,viper 是任務劃分中的佼佼者。

可測試性 -- 不出意外地,更好的分布性就有更好的可測試性。

易用性 -- 必須為很小功能的類寫出大量的口。

2)ios viper 示意圖:

基本上,viper 模組可以是乙個螢幕或者使用者使用應用的整個過程。viper 是第乙個通過路由器實現明確的位址導航模式。

當我們把 viper 和 mv(x) 系列作比較時,我們會在任務均攤性方面發現一些不同: model 邏輯通過把實體作為最小的資料結構轉換到互動器中。controller/presenter/viewmodel 的 ui 展示方面的職責移到了 presenter 中,但是並沒有資料轉換相關的操作。

MVC 架構模式

mvc架構模式 模型 檢視 控制器 model view controller 模型 模型代表應用程式的資料以及用於訪問控制和修改這些資料的業務規則,當模型發生改變時,它會通知檢視,並為檢視提供查詢模型相關狀態的能力.同時,它也為控制器提供訪問封裝在模型內部的應用程式功能的能力.檢視 檢視用來組織模...

常用架構模式

根據維基百科中的定義 架構模式是乙個通用的 可重用的解決方案,用於在給定上下文中的軟體體系結構中經常出現的問題。架構模式與軟體設計模式類似,但具有更廣泛的範圍。在本文中,將簡要地解釋以下10種常見的體系架構模式,以及它們的用法 優缺點。分層模式 客戶端 伺服器模式 主從裝置模式 管道 過濾器模式 模...

iOS MVC 架構模式

2 view 檢視物件 3 controller 控制器物件 直到進行單元測試的時候才會發現問題越來越明顯。因為你的 viewcontroller 和 view 是緊密耦合的,對它們進行測試就顯得很艱難 你得有足夠的創造性來模擬 view 和它們的生命週期,在以這樣的方式來寫 view contro...