我会如此搭建和注意下面的点:
1. 横向分业务,多组件开发,一个独立的业务一个library,然后有一个主Module Application, 之间通过一个Router Library通信,进行解耦。
2. 每个业务模块纵向采用MVP方式,进行职责划分, V只负责显示数据,P负责逻辑,M负责获取数据和数据存储。
3. 实时性的数据绝对不做本地数据库的存储,非实时性的数据做本地存储,并且存储时,一定优先存储本地,然后显示,最后在合适的时机才上传网络存储。这样能提升用户体验和速度。
4. 本地数据库存储使用greenDao来操作。网络使用Retrofit。图片用Glide。设计用Material Design。
4. 网络和本地的一致性保证:当本地有某行变化时,即更改syncType=0,在合适的时机去上传同步。
5. 在类似于TabLayout + ViewPager + Fragment 的UI架构App,一定要使用懒加载,否则会出现进入黑屏和严重卡顿的感觉。
6. 对于第三方库做一层封装,再使用。
7. 尽量少的使用Public Static 变量,难以维护。
8. 迭代开发,优先出核心功能,附属功能逐步加上,而不是一次性加上,这与产品的规划是相关的。
9. 用Git,不要用SVN。
10. 用model和fastjson等工具转化json。
假如让我重新做一个Android App
最新推荐文章于 2023-11-29 12:32:25 发布