為什么不推薦rxjava 真的有必要用rxjava嗎?
真的有必要用rxjava嗎?1、Rxjava邏輯會(huì)比較清晰,蛋代碼可讀性比較差;用在后臺(tái)的業(yè)務(wù)處理上,后臺(tái)業(yè)務(wù)通常復(fù)雜,步驟多,這會(huì)讓邏輯更清晰,但是前端基本上沒有必要用,而且代碼可讀性比較差;2、R
真的有必要用rxjava嗎?
1、Rxjava邏輯會(huì)比較清晰,蛋代碼可讀性比較差;用在后臺(tái)的業(yè)務(wù)處理上,后臺(tái)業(yè)務(wù)通常復(fù)雜,步驟多,這會(huì)讓邏輯更清晰,但是前端基本上沒有必要用,而且代碼可讀性比較差;
2、ReTrofit每次發(fā)起請求都會(huì)創(chuàng)建OkHttp,不會(huì)復(fù)用,導(dǎo)致單條數(shù)據(jù)的請求性能低了一倍以上;
3、Rxjava ReTrofit組合起來運(yùn)行的性能非常低,特別是并發(fā)的時(shí)候,性能更低,測試發(fā)現(xiàn)并發(fā)100條要1200ms,不使用的話并發(fā)130ms;
4、Rxjava ReTrofit組合當(dāng)需要讀取本地緩存的時(shí)候,讀緩存是通過URL作為KEY來讀取,這樣就需要寫兩遍的URL,一遍是框架用的,一遍是用于緩存的,使用起來更不方便;以上是本人使用過程中的經(jīng)歷,有沒有高手解惑,目前決定放棄這套組合,自己實(shí)現(xiàn)一套
rxandroid和rxjava的區(qū)別?
RxJava要比EventBus的應(yīng)用更廣泛,EventBus僅僅是作為一種消息的傳遞工具,但是RxJava里面幾乎可以做任何事情。
如果是Android開發(fā)的話,可以使用RxAndroid,這是對RxJava的一個(gè)擴(kuò)展,結(jié)合sqare公司的retrofit可以很輕松的完成網(wǎng)絡(luò)的訪問。
我們知道,在Android中異步操作一般使用AsycTask來完成,但是AsycTask有很多缺點(diǎn),如不能方便的終止任務(wù)的執(zhí)行等。
RxAndroid完全可以替代AsycTask來完成各種異步操作,而且還有BindActivity和BindFragment方法,你根本不需要考慮異步操作時(shí)的Activity和Fragment的生命周期問題,還有更加強(qiáng)大的的鏈?zhǔn)秸{(diào)用,可以使程序很簡潔。
EventBus有個(gè)缺點(diǎn)就是凡是使用了EventBus的類都不能進(jìn)行混淆了,否則Evnetbus就找不到OnEvent方法了。
以上,推薦使用RxAndroid。
今年大三了,學(xué)了一年多的Java,可是都在說go用的越來越多了,很多人都已經(jīng)轉(zhuǎn)go了,請問我該怎么辦?
14年,有人說java快不行了,然后國內(nèi)java還是主流。17年,有人說java真的不行了,然后國內(nèi)java還是主流。19年又有人說java不行了,都在用python了,然而國內(nèi)真正搜索職位java和c依然還是主流。終于2020年了,又來一群不在it崗位的人說java不行了,go和python才是主流,一群培訓(xùn)機(jī)構(gòu)的話,你也信???你知道java生態(tài)多好嗎?你知道老服務(wù)有多少java開發(fā)的需要維護(hù)嗎?你知道一個(gè)公司要突然轉(zhuǎn)換技術(shù)方向代價(jià)會(huì)有多大嗎?