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

51 阅读2分钟

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

一、本堂课重点内容:

  1. 跨端是什么,跨端产生的背景及解决的问题
  2. 跨端技术方案介绍,目前主流的跨端技术方案(hybrid 方案/原生渲染方案/自渲染方案/小程序方案)以及对比
  3. 基于小程序跨端实践,带大家了解如何开发一个小程序以及优化小程序

二、详细知识点介绍:

跨端是什么

使得一套代码可以适配目前越来越多的业务场景,比如:PC(window、mac),移动端(安卓、IOS),web,IOT设备(车载设备、手表)。

跨端技术方案

  • 研发效率高--学习成本低,多端一致性高
  • 用户体验好--稳定性高,性能体验好
  • 动态化--支持动态化下发,满足日益增长的业务需求

跨端技术方案介绍

1.Hybrid

基于 webview 渲染界面,通过 JS bridge 把一部分功能系统开放给 JS 调用:

打开一个web界面,输入 url 地址然后展示我们的画面 JS bridge 是一个跨平台的实现,可以调用一些系统的功能,比如:相册,蓝牙等

2.原生渲染

通过 js 开发,通过中间层桥接之后使用原生组件来渲染我们的 UI,最著名: React Native

调用系统功能和 Hybrid 类似,渲染界面使用原生组件渲染效率高,用户体验好 缺点是只能用系统原生的能力,所以和 web 端相比能力有限

3.自渲染方案

利用 skia 重新实现渲染管线,不依赖原生组件,因为安卓 ios 底层也使用类似的引擎来进行渲染,所以我也使用它来进行渲染,最著名的是:Flutter

使用 Dart 语言开发,页面渲染不依赖平台 系统能力依赖于平台提供

4.小程序方案

使用 DSL + JS 来开发,通过中间层桥接后调用原生能力,使用 webview 来渲染UI,它能写的代码也是有限的