一種插槽式的元件化框架中介軟體 SCC

2021-10-04 01:10:35 字數 995 閱讀 4658

scc(slotcomponentcaller)是一種已鋪好基本線路(元件管理),露出基本卡槽(元件介面),底層引流線路已打通,使用者儘管往卡槽插入(註冊)到對應槽位,可對槽位進行攔截(interceptor),亦可通過底層閥門接通(aidl跨程序)進行兩個卡槽之間的接通的插槽式元件化框架。基本原理如下圖所示:

在相同程序中,元件a可以通過元件管理工具call起元件b,元件b收到呼叫之後會給回回應result。元件可在使用之前的任何時刻隨時插入卡槽(管理器)註冊。支援跨程序呼叫,如程序1中的元件a通過aidl呼叫程序2中的元件c,藍色即為元件a呼叫元件c的路徑,有遠端call,也有遠端返回result。這裡涉及binder的aidl程序間通訊,可檢視讀懂android框架思想中的binder機制是基石一文,如call的作用就是希望進入程序2中call起component,而不是在程序1call起component,相同的,返回result的結果也是回到程序1中進行。這裡component元件不僅僅是activity關聯,可以是任意操作。

通過scc,在重構某某寶的時候,首先會把原始整個工程看成乙個component,叫origincomponent,然後開啟乙個launcher component,這個launcher並不做具體的操作,只是call起origincomponent而已。隨後,就可以逐步的成立如logincomponent,把登入頁面從origincomponent分離出來,並進行全量回歸。

實際上,從原始工程中剝離業務成立單獨的元件的過程是艱難的,但卻是充滿期待的,因為就相當於把亂糟糟的一捆線,一根根的抽離出來,到最後完成的時候是可以看到很簡潔的工程。

接下來會介紹另乙個中介軟體,該中介軟體是乙個導航中介軟體,其作用和scc有部分是一樣的,比如當scc用來啟動乙個activity的時候,實際也是找出乙個activity。然而真正的原理也不盡相同。導航中介軟體是用到了android的scheme原理啟動activity,接下來我們將介紹到。

vue是一種漸進式框架

1.vue是一種漸進式框架 何為漸進式?簡單理解就是,vue由內而外是有檢視層渲染 元件機制 路由機制 狀態管理 構建工作分層組成,開發者可以根據需要,按需引入使用vue的分層功能,由簡單到深入高階的漸進式使用。如 初級 既可以只用vue做一些像頁面渲染 表單提交之類的基礎操作。中級 又可以進一步通...

一種分布式框架設計(二)

本篇主要介紹分布式框架的模組和其主要使用的通訊方式zmq。首先,對於任意的上游結點,它都有可能會把處理的結果傳送到任意的一台下游結點中,同時如果下游結點有新增的結點,上游結點還能自動感知並處理。另一方面,任意的下游結點也會要和所有的上游結點保持心跳。如果使用原始的socket,解決上述的問題會比較麻...

一種分布式框架設計(四)

我們設計的分布式系統,在正常工作時呈現出網狀。服務有層次性。客戶的請求會逐步經歷各層服務進行處理。當遍歷全然部服務後才會完畢一次請求。每層服務會有若干臺機器。上游節點的機器能夠把輸出結果傳遞到下游節點的隨意一台機器上。當服務所依賴的資料須要更新時。我們須要做好同步工作,並保證在資料更新過程中服務是可...