阿里的大佬们曾总结,「一般来说,跨端技术有 4 类场景,分别是跨设备平台(跨Web
端和手机端)、跨操作系统(如跨Android
和iOS
)、跨App
以及跨渲染容器。」
而其中移动端的跨平台技术一直以来都是很火热的话题,在现在都不看好客户端技术天花板的背景下,客户端的未来似乎在逐渐朝着跨平台方向倾斜。
跨平台方案的优势十分明显,对于开发者而言,可以做到一次开发,多端复用,一套代码就能够运行在不同设备上。这在很大程度上能够降低研发成本,同时能够在产品效能上做到快速验证和快速上线。
但是,移动端的跨平台技术并不是仅仅考虑一套代码能够运行在不同场景即可,还需要解决性能、动态性、研发效率以及一致性的问题。
性能: 如何通过前端和客户端的结合,实现更优的渲染性能以及交互性能;
动态性: 客户端怎样能够实现更低成本的发版、甚至不发版直接动态更新代码;
研发效率:如何提升不同客户端的动态调试之类的研发效率;
一致性: 如何实现一份代码的多端部署,并保证代码在多个客户端内展示形态的一致性以及兼容性问题。
如今,也已经出现了如WebView
、React Native
、Weex
、Flutter
、小程序等众多的移动端跨平台框架。但是行业内一