摘录


2013 年,手淘航母战略的制定,带来了业务和开发人员的翻倍膨胀。从不到 100 人猛增四五倍,同时业务数量大增,整个客户端的架构和发版节奏受到极大挑战,Atlas 作为之前手淘客户端的基础框架,进行了一次大的重构,形成了今天的 Atlas。

Atlas 是一个 Android 客户端容器化框架,主要提供了组件化、动态性、解耦化的支持。支持工程师在工程编码期、Apk 运行期以及后续运维修复期的各种问题。

在工程期,实现工程独立开发,调试的功能,工程模块独立。 在运行期,实现完整的组件生命周期的映射,类隔离等机制。 在运维期,提供快速增量的更新修复能力,快速升级。 Atlas 是工程期和运行期共同起作用的框架,它的特点是尽量将一些工作放到工程期,这样来保证运行期的简单,稳定。

目前,Atlas 在淘系 App 的应用十分广泛,手淘自身超过 60+ 业务组件、20 个协作团队,以及百万行级别代码都在 Atlas 上运行,其快速迭代能力让应用的发布周期从每月到每周再到随时发布,在过去半年里就发布了 446 次。另外 Atlas 本身非常轻量,只有 90 多个类,支持大小型 App 开发,从大型的手淘到相对小型的阿里健康等都是用的这个框架。其稳定性也接受了考验,兼容 Android 4.x 以上系统版本。整体手淘的 Crash 率一直维持在万分之五左右,因为容器导致的 crash 占比小于百分之一。

从这个意义上来说,Atlas 首先要解决的问题是大规模团队的协作问题,诉求包括并行开发、快速迭代、工程解耦,然后解决的问题是客户端动态更新的问题。手淘内部思考的解决方案就是组件化。

点评

NULL

原文

点击这里查看原文

其它

本帖内容由21QA云收藏工具自动生成,欢迎使用。

系统消息 若觉得内容不错,请点击左上角的"赞"图标,以优化网站的内容呈现。 另外,请及时验证注册邮箱,否则收不到21QA发出的红包。 官方Q群:250203055

asked 08 May, 17:54

%E8%B7%AF%E4%BA%BA%E7%94%B2's gravatar image

路人甲
131561594671

Be the first one to answer this question!
toggle preview

powered by O*S*Q*A

粤ICP备14040061号-1