跨端技术概述 | 青训营笔记

37 阅读1分钟

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

跨端背景

随着业务的发展,产生了越来越多的业务场景,同时随着技术的发展,产生了越来越多的端,PC端、移动端、web端、IoT设备

常见的痛点

  1. 功能几乎一致,各端需要单独配置研发人员
  2. 开发维护成本高
  3. 安卓 IOS发版周期长

跨端技术方案目标

  1. 研发效率高
  2. 用户体验好
  3. 动态化

方案介绍

  1. hybrid方案
  2. 原生渲染方案
  3. 自渲染方案
  4. 小程序方案

hybrid方案

基于webView渲染,通过JS Bridge把一部分系统能力开放给JS调用。

原生渲染方案

使用JS开发,通过中间层桥接后使用原生组件来渲染UI界面 (在样式上有点缺失,就是没法实现)

自渲染方案

更底层的实现,利用Skia重新实现渲染管线,不依赖原生组件 (Flutter是Google在2018年世界移动大会公布的开源应用开发框架,仅通过一套代码库,就能构建精美的、原生平台编译的多平台应用。)

小程序方案

使用小程序DSL+JS开发,通过中间桥接后调用原生能力,使用webview来渲染UI界面。

技术方案对比

image.png

总结

本节课就两个点:

  1. 主流跨端技术方案
  2. 小程序的开发与实践

随着端越来越多,跨端的需要会越来越强烈,跨端技术方案也会不断迭代,核心目标仍然是这【write once,run anywhere】,未来自渲染可能会出现更多的机会。