在講這篇文章之前,作為一個Android開發(fā)者,我們先思考這樣一個問題:
在你使用IDE創(chuàng)建一個項目的時候,
你是否在腦海中已經(jīng)存在
一個完整的應(yīng)用架構(gòu)設(shè)計規(guī)劃?
在你設(shè)計的這套系統(tǒng)中,
如何保證系統(tǒng)的穩(wěn)定和兼容?
你的代碼邏輯是否優(yōu)雅?
性能是否得到提高?
如果你正在思考,或是已經(jīng)很熟練了,那么不妨來看看這一篇文章,本文主要講解在Android中的系統(tǒng)架構(gòu)設(shè)計,以一個簡單的Android智能分揀柜系統(tǒng)為例。
在這里首先要說明一點,對于開源社區(qū)一些框架的選擇,一定要選對,選合適的,比如現(xiàn)在比較熱門的RxAndroid和EventBus,建議大家如果在企業(yè)開發(fā)中,特別是產(chǎn)品開發(fā),一定不要選擇這兩個框架,這里說一下原因:
RxAndroid的缺點不用多說,流式開發(fā),和線程間的隨意切換,雖然確確實實提高了我們的開發(fā)效率,但是帶來的問題也很明顯——可讀性變差,代碼耦合極高,原因可以在項目中自己體會。
接下來說說EventBus消息傳遞利器,好用是好用,我在以前項目中也大量用了,后來公司來了一個新的同事,發(fā)現(xiàn)EventBus.getDefault().post(messageEvent),然后...emmmmm這個消息發(fā)哪兒去了?在哪兒接收的?
所以后面我們開發(fā)寧可辛苦一點自己寫觀察者模式去發(fā)送監(jiān)聽數(shù)據(jù),也不要再使用EventBus了。這些框架確實提升了開發(fā)效率,但相應(yīng)的增加了后期維護(hù)成本。
在這個系統(tǒng)中,將整個APP拆分四層,最核心的數(shù)據(jù)層和通訊層,最高效的組件層和最美麗的UI模塊層,其中組件層在本系統(tǒng)中分為4大塊,包含UI組件,路由組件,系統(tǒng)組件以及外圍組件。
在知道系統(tǒng)的應(yīng)用架構(gòu)后,接下來我們需要設(shè)計一些基礎(chǔ)庫,一些封裝類來提高效率,保證質(zhì)量。
接下來的是網(wǎng)絡(luò)請求,數(shù)據(jù)庫操作,文件操作,配置存儲等基礎(chǔ)框架設(shè)計。
模塊化的開發(fā)和設(shè)計,在開發(fā)過程中有助于提高后期效率。
最后,對于功能邏輯的合理規(guī)劃,也是事關(guān)重要,如在智能分揀柜系統(tǒng)中,使用的是平板,主界面用來展示各種信息,如果全部都在Activity中處理,那么此類一定非常膨脹,后期維護(hù)成本變得極高,故:
因智能分揀柜系統(tǒng)主界面是用來展示數(shù)據(jù)信息的,所以:
京東物流招標(biāo) | 2025年3月湖北京東大件物流宅配資源招標(biāo)
2042 閱讀京東物流2025年京津冀地區(qū)洗護(hù)工廠招標(biāo)
1829 閱讀極兔經(jīng)調(diào)整凈利潤2億美元!飛輪效應(yīng)啟動,下一個爆發(fā)點在哪里?
915 閱讀打造最賺錢的跨境物流企業(yè),85后老板如何成就“行業(yè)一哥”?
834 閱讀小紅書官宣電商出海計劃
780 閱讀別瞎忙了,物流人的出路根本不在辦公室
706 閱讀被月薪困住的物流人
635 閱讀南航物流打造全國首個“雙前置”貨站
521 閱讀菜鳥推出“自動化+無人車”快遞新模式 助力縣域快遞升級
543 閱讀菜鳥悉尼倉入庫量猛增170%,海外倉自動化再升級
563 閱讀