android淘宝客户端高性能高稳定性应用框架
(本片主谈淘宝构架的核心要素点,涉及到四大金刚的详细细节点,见下篇)
看到淘宝如此强大的客户端,我不禁想你淘宝客户端的张毅(江湖名号:陶钧)在ADC中对于淘宝框架剖析讲解;
议程包含三大点:
- 淘宝 Android客户端开发的特点和挑战
- HOW TO: TaoBao Client Framework
- 淘宝 Android客户端上的最佳实践
下面一一细说陶钧当日的讲解:
-----淘宝 Android客户端开发的特点------------------------------------
- ? 用户体验第一
- ? 运行在用户机器上
- ? 部署成本高
- ? 自由地开发
备注:用户体验(4点):
- 用户体验 助产品领先竞争对手;体验是立体的;UI 和 UE,一静一动;
- 性能:稳定性,电量,流量,速度——四大金刚
- 团队的品味决定产品的品质
- 细节:不期望所有用户都感受到
备注:运行在千差万别的机器上
- OS版本
- 设备能力
- 瓶颈不一样,CPU,RAM,屏幕大小,操作性
- 运行环境复杂
- 用户的网络环境,电量,流量,内存;
- 处理各种异常和中断
- 和其他程序的兼容
备注:android 碎片化(OpenSignalMaps公司 统计 3997台设备下载并运行了他们的应用)
- 28原则,降级服务
- 尽量降低和系统的耦合
- 异常和兼容性问题,从根源寻求解决方案
- 运行时统计,识别瓶颈,动态参数调整
- 80%的复杂度可以封装到SDK中
备注: 用户的困难
– 我是流量小水管,伤不起
– 磁盘空间不足了
– 我就用5分钟,懒得升级了,下次再说
– 谁能告诉我怎么升级? …
? 渠道众多,推广成本高
– 厂商,应用商店,下载
? 解决之道
– 客户端支持部分线上动态部署能力
– 通过webview 直接集成 webapp
5:自由的开发:(2-3个人就可以写出一个客户端)
- 对OS的访问自由,随意耦合
- Framework 对开发模式没有强约束
- 入门门槛低
- 重复造轮子 貌似比学习使用轮子 要容易
----HOW TO: TaoBao Client Framework--------------------------------
开工准备:
第一:入口——基础购物平台
- 开放的平台
- 通过组件接入 业务和服务,降低接入成本
- 技术框架统一,减少代码冗余
- 研发中的App 性能监测
第二:HOW TO
- 重用:把实战的经验,代码,思路沉淀下来。开发标准很重要
- 确保不犯同样的错误,光有SDK是不够的
- So we need something
- 客户端应用框架
第三:框架的目标

第四:框架的性能

最佳实践:构架淘宝框架:

框架构建原则:
应用框架:Base Function
- API Request
- Image Pool
- Push
- Cache
- TB WebView
- DataProvider
应用框架:Business’s Features
- Data and Logic
- Friend interface for Application
- Model and self-control
- Cache build in
- Can be shared between Apps
应用框架:Rich View
Performance
Encapsultae some base user interact for you app;
Fit to various screen
应用框架工具:? 开发辅助工具
– Dynamic Memory Monitor in Framework
– MAT
– Monkey
– Perf Tool
– TraceView,Benchmark in Framework
? 无线测试实验室
– 主功能 自动回归测试
– 兼容性 回归
– 稳定性 监测
– Performance 监测

- 2楼penguu8前天 18:04
- 可以看看吧。
- 1楼rqj前天 17:05
- good