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

149 阅读2分钟

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

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

跨端背景

随着业务的发展,产生了越来越多的业务场景及需求,产生了越来越多的端。

常见问题:

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

跨端技术好处

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

跨端技术方案介绍

跨端开发方式

Hybrid方案

基于WebView 渲染,通过JSBridge 把一部分系统能力开放给JS调用 开发成本低, CSS 全集 性能中等

原生渲染方案

使用JS开发,通过中间层桥接后使用原生组件来渲染UI界面。 原生组件渲染 性能好 CSS子集 例如Facebook推出的React Native。 受限于OEM widgets,但是一些样式无法实现

自渲染方案

利用Skia重新实现渲染管线,不依赖原生组件

例如谷歌推出的Flutter,使用Dart开发跨端APP,但是学习成本较高 受限于Dart的生态 Widgets Platform 放到了 APP里性能最好.

小程序方案

使用小程序DSL + JS开发,通过中间层桥接后调用原生能力,使用webview来渲染UI界面。 开发成本低,CSS全集,一致性好.

字节小程序是一种全新的连接用户与服务器的方式,它可以在宿主(抖音,头条,等App)内被边界地获取和传播,同时具有出色的使用体验。

总结

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