AirJD 焦点
AirJD

没有录音文件
00:00/00:00
加收藏

从万物生长到繁荣有序—重新思考移动开发 by 庄卓然

发布者 mobile
发布于 1464314356410  浏览 5798 关键词 行业报告, 移动开发 
分享到

第1页

从万物生长到繁荣有序

重新思考移动开发

南天



第2页

2016-4-



第3页

目录

contents



移动开发这十年 移动开发万物生长 移动开发繁荣有序 移动开发个人展望



第4页

移动开发这十年

设备十年



第5页

移动开发这十年



过去



应用十年



现在



第6页

移动开发这十年



过去



平台十年



现在



第7页

移动开发这十年



KJava/MTK WAP浏览器 (单进程)



iOS/Android (多进程)



容器化



动态化



(动态部署、差量更新) (RN/ Weex)





Symbian

(应用级动态加载)



Hybird



插件化



Native Web化





移动技术十年



第8页

移动开发万物生长

应用开发人员

13%



移动应用数



2014 2015

300W+



180W+ 300W+



开发人员与应用规模万物生长

77% 小于30岁、小团队,移动领域平均开发经验不到3年



第9页

12%

2015年移动领域使用云服 务、三方工具 同比2014 提升12%



第10页

移动开发万物生长

开源与三方服务万物生长

50%应用需多平台,跨平台、三方工具成为刚需



第11页

移动开发万物生长-领域知识



游戏引擎



酷 滤镜美化



缓存 炫

UI控件 特

swift 持 kotlin效续

Hybrid 集



RN 拍照/摄像 数据同步



Weex 图片库碎片化



跨平台



数据库 MVVM







动 态



短视频/直播



动发



线 上 度 量



Java OC 成



MVC



兼容性 优 版 化



包混淆 安全加固 Runtime



图文 混排



热 修



内存优化 动画库 ART Davilk



Rx 复 性能优化 网络库



Flux



运营商网络优化



动态化 Relay



Framework



长链接 方法数超限



AOP



第12页

移动开发万物生长-开发者诉求



渲染



逻辑



效果 体验 创新 复用 灵活 解耦



组件库

丰富 专业 易接入



开源 + 自研



开源 + 自研 开源 + 自研 + 三方服务



快速 开发



提升 体验



功能 体验 性能 体验



第13页

移动开发万物生长-PC与移动对比



PC时代



移动时代



渲染



稳定性



逻辑处理 随时发版,想发就发



伸缩性 扩展性 稳定性



渲染 逻辑处理 组件库 不稳定性

逻辑处理



体验 性能 兼容性 扩展性 稳定性 专业性



应用市场发布版本



引子:“富”客户端技术之变



第14页

移动开发万物生长-诸多挑战



应用体验



部署环境 (平台+设备)



App 渲染 逻辑处理 组件库

传输介质 云端服务



人 研发效率

协同方式



移动开发挑战



移动开发挑战在于既要还要,开源与三方服务只能解决各自领域问题。



第15页

移动开发繁荣有序-问题定义



工程交付

多人并行 开发

开发期解耦



模块复用 独立运行

运行期解耦



动态加载 差量更新

发布期解耦



度量定位 快速修复

研发支撑



研发效率

编程框架



体验特色



不发版



高质量中间件



开发模式改变



第16页

移动开发繁荣有序-各种尝试



H5 全栈



部署灵活, 性能体验问题

平台升级



依赖编程框架, 对人员有要求



等待iOS/Android 跨平台是问题



第17页

移动开发繁荣有序-研发有序



部署架构 研发支撑



水平扩展

快速堆人



编程框架



垂直扩展

具体业务开发效率



中间件



动态化



工程交付 业务研发效率

功能体验 全新开发方式



网络

复杂多变的环境 Network, Device



随时在线的用户 - Anytime, Anywhere



第18页

阿里移动架构进化之路



端侧架构的弹性与张力 效率与体验的平衡之道 无线网络治理的快准稳 移动中间件沉淀与建设 研发支撑与质量保障 传统开发到核心技术突破



Support Platform

Gateway



Tool Age



App Age



Platform Age



Web Browser



webview Biz Native



Hybrid Biz



Libs Infra



Network



Native



Hybrid Biz Libs Infra Bus Net Service

Native



形态: - WAP 站点

关键技术: - WAP 2.0 - 云转换



形态: - 披着APP外衣的WebAPP - 局部Native化

关键技术: - HTML + JSON - webview



形态: - Native占比逐步加大 - PC业务开始迁徙

关键技术: - API Gateway - Hybrid - PUSH - 支撑平台



产品形态: - 大规模人员投入 - 模块插件化开发 -

关键技术: - 容器 - 网络通道 - 基础服务框架 - 支撑平台



Ecosystem Age



第19页

移动开发工程标准模式



单工程(多分支)混合开发



B UI 逻辑



A UI 逻辑



Z

UI 逻辑



V1版本



源代码集成

XZ V2版本



ABZ



ABZ



X



V3版本 ABZ



第20页

移动开发标准模式的制约

• 大量业务的涌入共进 • 火车模型的悬崖效应 • 数十支团队的整合集成 • 大规模团队的敏捷挑战 • Mission Impossible:

随时发版,随时更新



第21页

阿里容器架构



Bundle (deployable unit)

Bundle (deployable unit)

Bundle (deployable unit)



UIs



Services



Msgs



Bus (UI & Service & Message)



Lifecycle Mgmt.



Bundle Mgmt.



Runtime



Librar ies



App/Service Project



Runtime Lib



Librar ies



Runtime Project



一切皆组件:告别插件,拥抱组件(bundle)



第22页

阿里容器架构延展



热修复



动态部署



差量更新





dexposed AndFix

发布期解耦,让发版不再成为限制



+









手淘历年hotpatch发布次数



第23页

阿里移动网络接入

不得不谈的移动网络技术



不确定性

弱网问题 通信效率 通信安全



随时在线



部署架构



云上开放



长链接 调用模型



灵活调度



百川移动云



Node B RNC SGSN /MME



GGSN /GW



UE



Authoritative DNS Server



LocalDNS



IDC GW



SERVER



第24页

阿里移动网络接入-网络优化&调用模型



HTTPDNS



无线TLS



HTTP2.0



协议优化 弱网优化 SPDY QUIC



移动网络优化



RPC



PUSH



SYNC



调用模型 TQL



长链接



随时在线



第25页

阿里移动网络接入-部署调度



异地多活 前置接入 海外部署 就快接入



IP下发 测速上报



网络调度

调度模块



客户端 SDK

网络测速 统 一 调度 网 络 配置 库

单元化



网络通道

统一协 议



网络接入层 Aserver

Spanner+



静态资源 部分前置业务

CDN



业务网 关

业务gw

Push gw

其他gw



第26页

阿里移动网络接入-云上开放



云上开放



云推送



移动加速



百川移动云



HTTPDNS



移动数据采集



云推送、移动数据采集已上云开放。其他陆续开放中。



第27页

Weex-或许是一条自由之路



Web开发痛点

加载性能

流畅体验



Native开发痛点

平台、设备差异 自由部署能力 开发集成效率



Web



Hybird



Weex



You give us a few weeks, so we bring you a few Weex.



第29页

Weex

The V & VM in MVVM

from



第30页

Weex

f ( HTML/CSS/JS ) = Native

UI



第31页

HTML/CSS/JS

DSL

(HTML/JS/CSS) transformer/js-framework

Virtual DOM



iOS Renderer Android Renderer H5 Renderer



iOS UI



Android UI



H5 UI



第32页

inspired by Web Components, Vue



第33页

multi platforms support



React Native

平台支持: iOS/Android API设计: 平台差异



Weex

平台支持: iOS/Android/H5 API设计: 透明化平台差异



第34页

coupling in template & style mixed with logic



React JSX



Weex(Vue)



第35页

Weex三种模式



Full Page Page



H5组件



Native组件 件



第36页

Weex showcase



第37页

移动开发个人展望



Atlas/hot patch



ACCS



WEEX



OSGI



新的传输介质



Web方式开发Native应用



从万物生长到有序归一?



第38页

移动开发个人展望



变 不变



新交互 新场景 新传输介质 技术本质 效率为王 极致体验



传输介质 部署环境



编程模型 极致体验 效率为王



A/VR?



触控



移动技术螺旋上升,砥砺前行



第39页

加入我们,创变未来



阿里百川

阿里百川(baichuan.taobao.com) 是阿里巴巴集团无线开放平台,通过 “技术、商业及大数据”的开放,提供 移动场景下的高内聚、开放式、行业 领先的技术产品矩阵、成熟的商业组 件和完善的服务体系,帮助移动开发 者快速搭建APP、加速APP商业化进 程,全方位赋能移动开发者及移动创 业者。



手机淘宝技术团队MTT

AlibabaMTT MTT(Mobile Taobao Tech)欢迎关注手机淘宝技 术团队,交流分享无线技 术,共创移动开发无限未 来。



支持文件格式:*.pdf
上传最后阶段需要进行在线转换,可能需要1~2分钟,请耐心等待。