双线程模型
逻辑与视图分离,在安全与流畅间取得完美平衡。
逻辑层 (AppService) 与 渲染层 (WebView)
小程序的 JS 代码运行在独立的 JSCore 中,不直接操作 DOM;UI 渲染则在 WebView 中进行。两者通过微信客户端(Native)作为桥梁进行异步序列化通信,彻底杜绝了 JS 脚本阻塞 UI 渲染的问题。
安全沙箱隔离
禁用 `eval`、限制 DOM/BOM API 访问、强制 HTTPS。逻辑层无法直接获取系统底层权限,所有网络请求与设备调用均需经过 Native 代理,保障宿主环境绝对安全。
数据驱动视图
摒弃命令式 DOM 操作。开发者只需修改 Data 状态,框架底层自动计算 Diff 并通过 Native 桥接层将最小化的数据补丁发送至渲染层更新 UI。
渲染引擎演进
从 WebView 到原生级体验的跨越。
- WebView 渲染瓶颈 传统小程序依赖浏览器内核,长列表滚动、复杂手势与高频动画易受主线程阻塞,产生白屏与掉帧。
- Skyline 渲染引擎 微信自研的新一代渲染架构。采用单线程模型,UI 节点直接映射为原生组件,由 GPU 驱动光栅化,彻底消除跨线程通信延迟。
- 共享元素过渡与手势系统 基于 Skyline 实现类似原生 App 的页面转场动画与跟手物理手势,让小程序的体验无限逼近 Native。
性能优化与工程化
突破 2MB 限制,榨干每一滴渲染性能。
粗放式 setData 与 全量打包
每次传递庞大 JSON 对象跨线程通信导致卡顿;所有代码打包在一个文件中,冷启动耗时极长。
按需编译与数据 Diff 优化
框架底层自动进行 Data Diff,仅传递变更的 Key-Value;配合“分包加载”与“按需注入”,大幅降低首屏白屏时间。