Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

16 - 关于跨端一些思考记录 #18

Open
Linjiayu6 opened this issue Mar 9, 2022 · 1 comment
Open

16 - 关于跨端一些思考记录 #18

Linjiayu6 opened this issue Mar 9, 2022 · 1 comment

Comments

@Linjiayu6
Copy link
Owner

Linjiayu6 commented Mar 9, 2022

前端发展到现在一直绕不开几个方向。

  1. 怎么开发:还是JS那一套,只不过如何高效运行,如何开发更爽,前端工程能力等。
  2. 怎么打包:webpack那一套组织JS。
  3. 编译运行:不是在浏览器运行就是在Native运行,或者 Native + Webview混合运行方式。
@Linjiayu6
Copy link
Owner Author

Linjiayu6 commented Mar 9, 2022

小程序

berwin/Blog#43

  • 基于web能力实现的小程序。
  • 模型是双线程模式。渲染是大部分 Webview + 少量Native,逻辑层放到Web Worker。
  • 为什么要分两个线程?
    背景: Web技术很开放,JS可以做任何事情,像window、跳转、操作DOM 这种不想在小程序里去处理。
    解决: 那就将代码放到沙箱去执行。只暴露部分能用的方法给用户。
    • 渲染线程: UI线程处理原生组件 和 大部分操作。管控和安全。
    • 逻辑线程: 数据处理,并传递给渲染线程
    • 两个线程只去做数据传递。

想让RD用部分native能力,大部分还都是webview。webview 又不希望RD用太多JS原生能力,做了一层渲染线程和逻辑线程的区分。之前单线程逻辑对渲染直接负责。现在是通过管控一下处理。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant