1.项目需求评审
技术人员根据以往经验提出:可改进的交互逻辑、技术难点
2.Code
1.项目设计
采用什么设计模式,什么架构
2.关键模块技术方案选择
2.1图片加载
Fresco、Volley、Picasso
2.2网络请求
封装OkHttp、Retrofit
2.3 Model解析
Gson、FastJSON
2.4内存泄漏检测
LeakCanary
2.5响应式编程
RxJava+RxAndroid
2.6长链接
WebSocket
2.7事件通知
EventBus
2.8Log
输入log文件到SD卡log4j、控制台打印log采用logger
2.9依赖注入
dagger1、dagger2、ButterKnife(UI注入,但是有个bug,在androidstudio的module不能使用)
2.10数据库
greenDao
2.11各种各样的弹窗:
DialogPlus
2.12代替 Toast 的消息提示
AppMsg
2.13统计分析
国内:Talking Data, 可惜友盟现在启动就带上阿里全家桶。
国外: Flurry, 国外统计分析系统的标杆,免费的。
2.14Crash分析
国内: 腾讯Bugly, 号称全球唯一自带ANR收集,其实原理很简单,不知别家为何不做。
国外: Crashlytics, 已经收归Twitter Fabric开发者工具集,免费好用。
3.CodeReview
通过gitLab中提交MergeRequest
如何实施有效的代码审查
给管理者:建立正确的文化
给所有人:人情味
给审查者:谦虚点
给开发者:对事不对人
4.提测后,bug修改管理
Jira bug管理系统的bug修改备注,需要注明:bug号+bug描述,每个bug都需要commit一次,方便以后查询。
3.版本管理与发布
敏捷开发下的版本管理
版本管理模型:Master、Developer、Self_Developer……
IOS版本发布的经历
四招教你轻松掌握APP新版本发布的潜规则
团队中的 Git 实践
4.代码重构
31天重构学习笔记重新整理下载
Android项目重构之路:架构篇
Android项目重构之路:界面篇
Android项目重构之路:实现篇