美文网首页
43 | 剖析使 App 具有动态化和热更新能力的方案

43 | 剖析使 App 具有动态化和热更新能力的方案

作者: 阳明先生_X自主 | 来源:发表于2020-07-08 11:44 被阅读0次

JavaScriptCore 解释器方案
iOS 系统内置的JavaScriptCore,是能够在 App 运行过程中解释执行脚本的解释器。

代码转译方案

自建解释器方案

不过,好在 GitHub 上有一个基于 LLVM 的 C++ 解释器 Cling,可以帮助我们学习怎样通过扩展 LLVM 来自制解释器。

小结

今天这篇文章,我跟你分享了使 App 具有动态化和热更新能力的方案,其中包含了目前大多数项目在使用的 JavaScriptCore 解释器方案。

但由于 JavaScriptCore 方案更适合前端开发者,于是出现了对原生开发者更友好的代码转译方案,代码转译最终解释执行还是 JavaScriptCore,在效率上会受到种种限制。为了更好的性能,便有了在 App 内集成自建解释器的方案。

我觉得热更新用哪种方案问题都不大,毕竟只是修复代码。但是,动态化方案的选择,就要更慎重些了,毕竟整个业务都要用。

动态化方案的选择主要由团队人员自身情况决定,比如原生开发者居多时可以选择代码转译或自建解释器方案;前端开发者居多或者原生开发者有意转向前端开发时,可以选择 JavaScriptCore 方案。

另外,动态化方案本身,对大团队的意义会更加明显。因为大团队一般会根据业务分成若干小团队,由这些不同团队组成的超级大 App 每次发版,都会相互掣肘,而动态化就能够解决不同团队灵活发版的问题,让各个小团队按照自己的节奏来迭代业务。

相关文章

网友评论

      本文标题:43 | 剖析使 App 具有动态化和热更新能力的方案

      本文链接:https://www.haomeiwen.com/subject/wciqcktx.html