Android团队技术积累方向

1、热更新/热替换

场景:

在实际开发中,我们会遇到app上线了,没几天出现了crash的bug,这种情形下,我们不可能重新发app,除非是非常非常严重的,这种场景下,hotfix技术就非常有用了!

参考技术:

http://www.apkplug.com/

https://github.com/singwhatiwanna/dynamic-load-apk

https://github.com/alibaba/AndFix

https://github.com/CtripMobile/DynamicAPK

https://github.com/bunnyblue/DroidFix

https://github.com/jasonross/Nuwa

2、快速批量打包--done

场景:

发更新包,突然有个地方要改,改完需要重新打包,如果再等待一个小时,肯定令人发指

3、JS协助的H5开发

场景:

有些需求非常紧急或者变化非常频繁,就需要H5支持

参考技术:

https://github.com/facebook/react-native

4、apk的瘦身--doing

场景:

随着业务的深入,代码量急速增加,且有很多未使用的代码未移除,还有一些不适用的图片,导致apk不断变大

参考技术:

http://zhuanlan.zhihu.com/zmywly8866/20006066– 内含一些推荐文章

5、代码分层

场景:

随着业务的增加,代码量急速增加,原先的类中代码不断增长,逻辑开始变负责,导致维护性变差

参考技术:

java服务端的分层

android的mvp

android的mvvm

6、app质量监控--doing

场景:

业务初期,我们都忙着开发新需求,忽视了app的质量问题。更多的时候,我们只关注能用就行。现在人员配备

逐步完善,我们要开始逐步重视质量

措施:

加强代码检测,团队内开始推广使用android studio的lint功能

加强线上crash的统计与修复

加强线上exception的统计与汇总

加强开发时的自测

团队内,逐步开始code review

7、kotlin语言--android世界的Swift

场景:

原生java语言开发被人诟病许久,groovy和clojure在android上的进展缓慢,kotlin的出现,社区比较火,而且

有jetbrains公司的支持,IDE上支持很方便,后续可以期待

8、RxJava函数响应式编程

场景:

现有异步代码编写和维护的时候,发现异步代码理解起来不如同步代码好理解,因为同步代码代码都在一起的,异步代码

不在一起,不好找。RxJava的使用,就能解决这个问题

参考文献:

http://blog.csdn.net/lzyzsd/article/details/41833541– 大头鬼的RxJava介绍

http://gank.io/post/560e15be2dca930e00da1083--抛物线的RxJava介绍

9、增量更新

场景:

每次用户更新都是下载一个完整的apk,费流量

参考文献:

http://blog.csdn.net/hmg25/article/details/8100896

10、sdk工作--doing

场景:

现在我们有两个app项目,发现两个项目代码有冗余,主要是非业务代码的重复。这个时候,我们需要提取sdk,给两个项目用,

同时为后续新开项目做准备,当然,也为公司做一些技术积累

你可能感兴趣的:(Android团队技术积累方向)