小程序|移动端跨平台技术之下的变与不变( 二 )
PHA(Progressive Hybrid App):PWA 与 Hybrid 思想的结合 , 通过 Hybrid 手段让 Web 的性能和体验接近 Native
PWA 标准化似乎走不通 , 即便走通了能够真正放心用起来可能也是数年之后了 。 Hybrid App 解决了一部分问题(平台能力扩展) , 但还不够 。 PHA 是这两种思路的延续 , 借助 Native 技术实现 PWA 的梦想
但无论 PHA 还是 HA , 引入 Native 依赖都意味着 Web 开放性的损失 , 继而带来跨端、跨 App 方面的问题跨端:容器化 Native
本文插图
除 Web 天然跨端之外 , 另一种统一多端的思路是将 Native 定制成标准容器 , 让同一份代码跑在一个个标准容器中 , 例如:
Android 容器:Native 壳 App
iOS 容器:Native 壳 App
Web 容器:Web Runtime
React Native 跨 Android、iOS、Web、Windows 四端 , Weex 跨 Android、iOS、Web 三端 , Flutter 以类似的方式跨 Android、iOS、Web、Linux 四端
从技术角度来看 , RN 与 Weex 在 Native 容器中提供了 JavaScript 运行环境 , 以及布局引擎 , 渲染层都采用 Native 控件 , 因此 UI 交互上仍然存在系统差异 。 而 Flutter 方案更彻底一些 , 连渲染层也换成了基于图形引擎自绘 UI 控件 , 从而保证 UI 交互的跨端一致性
然而 , 由于容器化 Native 的方案是从 Native 出发 , 没有跨端天赋 , 除了要想办法支持 Web , 还面临一个更难解决的问题——跨 App跨 App:小程序一码多投
本文插图
技术视角下 , 小程序跨 Native App 仍然是依靠 Web 方案 , 那么 , 为什么不直接用 Web App 呢?
由于商业竞争等因素 , 闯入别人家地盘的 Web App 通常会遭到一些限制 , 如安全警告、权限控制、甚至干脆禁止访问(所以才有了口令分享等弯弯绕绕的方式)
小程序则不同 , 其初衷是开放的 , 欢迎大家入驻(当然 , 也要遵守规则) , 并且国内的许多大型 App 也都相继开放了小程序能力 , 小程序逐渐成为跨 App 的正规方式 。 但小程序平台多起来之后 , 框架标准不统一的问题也暴露了出来 , 都叫小程序 , 但都大同小异 , 于是 , 如何快速产出多种小程序变成了一个值得探索的技术课题
实现原理上分为两种 , 编译转换与运行时适配 , 前者能够达到等同于原生小程序的性能但带来了诸多限制(编译器难以识别的写法都不支持) , 现有的 Web App 不那么容易迁移成跨 App 小程序 , 例如 Taro、uni-app 等 。 后者牺牲性能换取了更多的可能性 , 现有的 Web App 能够相对容易地迁移过来 , 例如 Taro Next、kbone 等
P.S.当然 , 也可以有动静结合的思路 , 理想情况下 , 绝大多数基础业务走运行时平迁 , 个别高性能要求的部分走编译转换三.重重变化之中 , 什么才是不变量?
渠道/端/平台、业务代码、工程化配套设施似乎都在快速地发生变化 , 没有哪个是稳定不变的
既然全都在变 , 就换个角度看 , 哪个部分一定会发生变化?
容器:新的渠道/端/平台都是新的容器
跨容器技术:新容器的出现 , 意味着新的跨容器技术要求
哪个部分是不必要跟着变的?
业务代码:技术方案的更迭、新渠道/端/平台的出现 , 通常伴随着业务代码的迁移 , Native 切 React Native 切 Flutter……乐此不疲 , 但从成本上看 , 业务代码并不一定也并不应该跟着变
工程化配套设施:大多与技术栈强相关 , 例如 Web App 的开发、调试、构建、发布、监控、运维与 Native App 存在诸多差异 , 但其中更基础的部分是技术无关 , 而流程相关的 , 例如构建-发布流程、监控运维服务等并不需要跟着变
推荐阅读
- 猎豹|猎豹移动蒙眼狂奔十年,终究逃不过时代魔掌?
- 便携|TEGIC迷我移动电源,小巧便携,随时随地,想充就充
- 电脑使用技巧|微软重新发布补丁对Windows 10更新:修复磁盘优化程序等
- 妈咪爱数码|TEGIC迷我移动电源,小巧便携,随时随地,想充就充
- 行业互联网|商丘移动:“千兆城市”让市民“智”享极速生活
- 移动网络|走出“脆弱”时代,毫米波迎来商用新机遇
- 移动网络|【关注】中国广电推动我国首批5G 700MHz设备完成型号核准入网工作
- 移动网络|电信唐建军:LWDM技术优势明显,产业链支撑有力
- |某程序员面试支付宝P7,面试已通过,却因为背调没过
- 移动网络|有人搞定了6G,首批6G芯片首次亮相,目前环境测试中设法达11Gbps
