在讲这篇文章之前,作为一个Android开发者,我们先思考这样一个问题:
在你使用IDE创建一个项目的时候,
你是否在脑海中已经存在
一个完整的应用架构设计规划?
在你设计的这套系统中,
如何保证系统的稳定和兼容?
你的代码逻辑是否优雅?
性能是否得到提高?
如果你正在思考,或是已经很熟练了,那么不妨来看看这一篇文章,本文主要讲解在Android中的系统架构设计,以一个简单的Android智能分拣柜系统为例。
在这里首先要说明一点,对于开源社区一些框架的选择,一定要选对,选合适的,比如现在比较热门的RxAndroid和EventBus,建议大家如果在企业开发中,特别是产品开发,一定不要选择这两个框架,这里说一下原因:
RxAndroid的缺点不用多说,流式开发,和线程间的随意切换,虽然确确实实提高了我们的开发效率,但是带来的问题也很明显——可读性变差,代码耦合极高,原因可以在项目中自己体会。
接下来说说EventBus消息传递利器,好用是好用,我在以前项目中也大量用了,后来公司来了一个新的同事,发现EventBus.getDefault().post(messageEvent),然后...emmmmm这个消息发哪儿去了?在哪儿接收的?
所以后面我们开发宁可辛苦一点自己写观察者模式去发送监听数据,也不要再使用EventBus了。这些框架确实提升了开发效率,但相应的增加了后期维护成本。
在这个系统中,将整个APP拆分四层,最核心的数据层和通讯层,最高效的组件层和最美丽的UI模块层,其中组件层在本系统中分为4大块,包含UI组件,路由组件,系统组件以及外围组件。
在知道系统的应用架构后,接下来我们需要设计一些基础库,一些封装类来提高效率,保证质量。
接下来的是网络请求,数据库操作,文件操作,配置存储等基础框架设计。
模块化的开发和设计,在开发过程中有助于提高后期效率。
最后,对于功能逻辑的合理规划,也是事关重要,如在智能分拣柜系统中,使用的是平板,主界面用来展示各种信息,如果全部都在Activity中处理,那么此类一定非常膨胀,后期维护成本变得极高,故:
因智能分拣柜系统主界面是用来展示数据信息的,所以:
京东物流辽宁大件中心宅配资源招采
1548 阅读这次,华为要做智慧物流行业的“黑土地”
1261 阅读小象超市重启线下店
831 阅读美国又出手!5月2日起,中国小包裹免税待遇被终止
811 阅读京东服务+天津清洗服务招商
764 阅读仓储库存分析法大全:ABC分析法、区域合并法、替代产品法......
690 阅读京东大件陕西省京东帮招采
696 阅读菜鸟承建的越南南部最大快递自动化分拨中心上线
681 阅读华鹏飞TIR实现仅用5天从深圳至阿拉木图的跨境运输时效
616 阅读极兔速递一季度包裹量同比增长31.2%,各区域市场表现亮眼
619 阅读