響應(yīng)式編程是一種編程模型,它通過異步和數(shù)據(jù)流來構(gòu)建事物之間的關(guān)系。這里的每一個字都很重要,“事物之間的關(guān)系”是響應(yīng)式編程的核心概念,“數(shù)據(jù)流”和“異步”是實現(xiàn)這個核心概念的關(guān)鍵。為了幫助大家理解這個概念,我們不妨以APP初始化業(yè)務(wù)為例來拆解一下這些文字。
這是一個理想化的APP初始化邏輯,完成SDK初始化,數(shù)據(jù)庫初始化,登錄,然后跳轉(zhuǎn)到主界面。下面的小系列會仔細(xì)告訴你。
事物的關(guān)系
這是一個非常寬泛的概念,可以是一個變量、一個對象、一段代碼、一段業(yè)務(wù)邏輯...但實際上,我們往往把事物理解為一條業(yè)務(wù)邏輯(你可以用業(yè)務(wù)邏輯代替事物,以后再去理解)。比如上圖,東西指的是APP初始化中的四個業(yè)務(wù)邏輯。
數(shù)據(jù)流
關(guān)于Rx的數(shù)據(jù)流有很多說法。雖然我理解這只是為了強(qiáng)調(diào)流量的重要性,但是這些文字所體現(xiàn)的編程思想其實是虛幻的,只會讓開發(fā)者對Rx編程更加迷茫。其實數(shù)據(jù)流只是事物之間的橋梁。
異步的
異步編程本身有很多優(yōu)點,比如挖掘多核CPU的能力,提高效率,減少延遲和阻塞等等。
但其實異步編程也有助于我們建立事物之間的關(guān)系。
在APP初始化中,我們可以發(fā)現(xiàn)SDK初始化、數(shù)據(jù)庫初始化和登錄界面是相互獨立的,應(yīng)該在不同的線程環(huán)境中執(zhí)行,以保證不會相互阻塞。但如果沒有異步編程,我們可能只會在一個線程中依次調(diào)用這三個相對耗時的服務(wù),最后做頁面跳轉(zhuǎn),這樣不僅沒有如實反映服務(wù)的原始關(guān)系,反而讓你的程序“反應(yīng)”更慢。
摘要
一般來說,異步和數(shù)據(jù)流都是為了正確建立事物之間的關(guān)系而存在的。但是,異步是為了區(qū)分無關(guān)的東西,而數(shù)據(jù)流(事件流)是為了連接相關(guān)的東西。
億電科技成立于2009年,一直專注于IT咨詢、信息平臺系統(tǒng)開發(fā)、企業(yè)網(wǎng)絡(luò)解決方案解決方案和運營。服務(wù)包括pc+手機(jī)響應(yīng)網(wǎng)站建設(shè)、B2C商城定制開發(fā)、微信微信官方賬號定制開發(fā)、企業(yè)管理小系統(tǒng)定制開發(fā)。
1.《響應(yīng)式編程 什么是響應(yīng)式編程?》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《響應(yīng)式編程 什么是響應(yīng)式編程?》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進(jìn)行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/junshi/688425.html