在讲这篇文章之前,作为一个Android开发者,我们先思考这样一个问题:
在你使用IDE创建一个项目的时候,
你是否在脑海中已经存在
一个完整的应用架构设计规划?
在你设计的这套系统中,
如何保证系统的稳定和兼容?
你的代码逻辑是否优雅?
性能是否得到提高?
如果你正在思考,或是已经很熟练了,那么不妨来看看这一篇文章,本文主要讲解在Android中的系统架构设计,以一个简单的Android智能分拣柜系统为例。
在这里首先要说明一点,对于开源社区一些框架的选择,一定要选对,选合适的,比如现在比较热门的RxAndroid和EventBus,建议大家如果在企业开发中,特别是产品开发,一定不要选择这两个框架,这里说一下原因:
RxAndroid的缺点不用多说,流式开发,和线程间的随意切换,虽然确确实实提高了我们的开发效率,但是带来的问题也很明显——可读性变差,代码耦合极高,原因可以在项目中自己体会。
接下来说说EventBus消息传递利器,好用是好用,我在以前项目中也大量用了,后来公司来了一个新的同事,发现EventBus.getDefault().post(messageEvent),然后...emmmmm这个消息发哪儿去了?在哪儿接收的?
所以后面我们开发宁可辛苦一点自己写观察者模式去发送监听数据,也不要再使用EventBus了。这些框架确实提升了开发效率,但相应的增加了后期维护成本。
在这个系统中,将整个APP拆分四层,最核心的数据层和通讯层,最高效的组件层和最美丽的UI模块层,其中组件层在本系统中分为4大块,包含UI组件,路由组件,系统组件以及外围组件。
在知道系统的应用架构后,接下来我们需要设计一些基础库,一些封装类来提高效率,保证质量。
接下来的是网络请求,数据库操作,文件操作,配置存储等基础框架设计。
模块化的开发和设计,在开发过程中有助于提高后期效率。
最后,对于功能逻辑的合理规划,也是事关重要,如在智能分拣柜系统中,使用的是平板,主界面用来展示各种信息,如果全部都在Activity中处理,那么此类一定非常膨胀,后期维护成本变得极高,故:
因智能分拣柜系统主界面是用来展示数据信息的,所以:
1688事业部【杭州】招聘物流业务运营;供应链选品中心运营;供应链产品高级专家;供应链负责人
4230 阅读盒马招聘店仓经理-全国;供应链计划(高级)专家-S&,高级服务体验专员(物流)-上海
3563 阅读中国南山集团2024届校园招聘物流管理类岗位
3113 阅读京东2024春招网申倒计时7天:物流质量改善与管理-北京/上海;物流运营,采销(电商运营)-北京
2530 阅读顺丰招聘冷运产品管理专员-南宁;储备网点负责人-南京、郑州;储备片区负责人-南通等;运力资源管理专员-海口;仓储管理经理-上海
2270 阅读中国五环2024届春招物流管理师&2025届实习生招聘
2241 阅读中国建材2024春招物流、采购等岗
2175 阅读宁德时代2025届暑期实习生招聘供应链与运营类
2097 阅读上港集团同盛物流2024年度校园招聘开始啦!
2041 阅读小象超市招聘北京常温仓生产主管;苏州供应链品控;杭州水产仓物流主管;武汉服务站站长;上海RDC负责人;设备设施运维经理-上广深
2059 阅读