相關係列文章前端
模塊化解耦框架RxFluxArchitecture1-框架簡介android
模塊化解耦框架RxFluxArchitecture2-基本功能實現git
模塊化解耦框架RxFluxArchitecture3-訂閱管理綁定生命週期github
模塊化解耦框架RxFluxArchitecture4-依賴庫與依賴注入架構
模塊化解耦框架RxFluxArchitecture5-Application多模塊共存併發
架構分爲三個層級 View,ActionCreator,Store。框架
UI 界面,根據用戶交互調用 ActionCreator 方法,響應 ActionCreator 或 Store 發送的通知,完成 UI 更新。模塊化
完成用戶交互操做(接口調用、耗時操做、頁面跳轉通知等),通知 Store 或 View。post
RxAction
到 Store;RxChange
到 View;RxError
到 View;RxRetry
到 View;RxLoading
到 View。維護 View 中須要的數據,接收操做結果通知RxAction
,提取其中封裝的數據供 View 使用,處理不一樣的業務邏輯。單元測試
RxChange
到 View,進行 UI 更新;LiveData
使 View 進行 UI 更新。使用 FaceBook 推出的前端架構 Flux,數據朝單一方向流動,無操做方法回調,上下層級關係明顯,邏輯清晰。
核心庫core-eventbus
(帶有 Tag 功能)實現數據總線功能,架構中上一層級不持有下一層級對象,本層級只需完成操做併發送通知,不須要知道下一層級誰來響應通知。
androidx.lifecycle.LiveData<T>
實現 MVVM 架構,通知 View 進行 UI 更新。androidx.lifecycle.ViewModel
,在 View 橫豎屏切換時維持數據。androidx.lifecycle.LifecycleObserver
,自動關聯 View 生命週期。核心庫core-arch
中使用 Dagger.Android 實現依賴注入,業務模塊僅需建立@Module
標註的依賴注入對象生成庫, 無需知道如何實現依賴注入。
核心庫core-arch-annotations
和core-arch
經過註解編譯時生成代碼和反射實現多個業務模塊共存 Application 生命週期方法代理類。
開源模塊化解耦框架RxFluxArchitecture,歡迎你們點贊Fork,更歡迎點評指導。