Skip to content

Commit

Permalink
Merge branch 'master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
waz0820 authored Jan 6, 2019
2 parents 18cadf5 + 1b7439a commit 80f7005
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions Reports/2019/#51-2019.01.09.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@

如题,本系列 Runtime 文章总共九篇,总字数为 10w+。一个技术要点能写 10w+ 不容易,能把一个技术要点循环渐进细致确当系统全面地讲清楚,真正做到一个系列搞定,足见作者的匠心如果不想再被 Runtime 题材的文章“碎片化”,那就从这里开始吧!

### 🐎 [OCEval-动态执行ObjectiveC的热修复方案](https://juejin.im/post/5c24a8396fb9a049d5198dfc)

苹果在18年多次对基于 runtime & JavaScriptCore 的热修复方案进行全面的打压,导致 JSPatch 以及其混淆 or 变种,变得难以过审但是本文作者依然在热修复的探索上寻找并实现了一条新的方案 OCEval OCEval 的本质是作者自己实现了一个OC语法的简单解释器,包含了基础的词法分析与语法分析,从而能够在运行期将 OC 代码生成抽象语法树 AST 然后进行执行这样就可以将OC这种原本必须经过编译再运行的语言,扩展为 js 那样的解释执行,从而能够做到动态下发代码并且运行同时再通过 runtime 进行 aspect 那样的 hook 操作,实现热修复线上代码整个代码都已经开源,对编译原理有兴趣的同学值得深入好好学习一下

## 设计

### 🐎 [[] 色彩无障碍性产品设计指南](https://juejin.im/post/5c2c233d6fb9a049bd4266b7)
Expand Down

0 comments on commit 80f7005

Please sign in to comment.