跨端技术 | 青训营笔记

50 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天

九、跨端技术

  1. 跨端是什么
    • 背景
      • 应用场景+各种端的出现(PC、移动、web、IoT等等)
      • 出现问题:功能基本一致,但是需要不同的人员完成不同的端研发,造成开发维护成本高
    • 目标
      • 研发效率高:学习成本低+多端一致性高
      • 用户体验好:稳定性高+性能OK
      • 动态化:支持动态下发,满足业务需求
  2. 跨端技术方案
    1. hybrid方案
      • 基于WebView,通过JS Bridge把一部分系统能力开放给JS调用
      • WebView类似浏览器页面,加了一个中间件
    2. 原生渲染方案
      • 使用JS开发,通过中间层桥接后使用原生组件来渲染UI界面
      • 它跟hybrid的最大区别只是渲染方式不同,一个是原生组件,一个是WebView
      • React Native:使用React范式,开发跨平台应用(以前只能是跨端页面)
      • 使用这个,因为是使用的原生组件,要跟跨端的功能最低水平匹配(一般是移动端),所以功能会受限一些
    3. 自渲染方案
      • 更底层
      • 利用Skia重新实现渲染管线,不依赖原生组件
      • 代表:Flutter
    4. 小程序方案
      • 使用小程序DSL+JS开发,通过中间层桥接后调用原生能力,使用WebView来渲染UI界面
      • 字节小程序
        • 逻辑线程和渲染线程分开

跨端.jpg