小程序原理

676 阅读1分钟

1 基本原理

即在微信APP环境中运行前端页面,同时微信提供了jssdk一套拥有微信APP原生能力的工具包给小程序调用。(微信公众号也类似这种情况,完全的html,js页面,可调用jssdk工具包。)

网页开发工具包,称之为 JS-SDK,开放了拍摄、录音、语音识别、二维码、地图、支付、分享、卡券等几十个API

2 webview

众所周知,网页在APP中都是通过webview加载的。可通过以下的知识链接,了解APPwebview的加载方式。一定程度上也可以理解小程序的生命周期等

APPWebView加载网页全面解析

WebView与JavaScript的交互总结


但是webview加载网页的性能是很差的,所以小程序对于此问题做了很多优化处理,如下


3 jscore

小程序为了提高性能,将js逻辑层和页面渲染成放在两个不同的进程里。如下图所示:


注:JavaScriptCore环境与node.js不同,一些 NPM 的包在小程序中也是无法运行


微信小程序的开发技术上是使用一种类似 React Native 的框架来保证程序的原生性和稳定性。

相关资源:
深入理解JSCore:www.cnblogs.com/meituantech…

4 Web 资源离线存储提高性能

微信为小程序提供了5M的存储空间,用户第一次加载时会把小程序资源缓存到本地,之后重新打开小程序会先从本地读取数据。当然,如果该小程序长时间不使用,微信会清除其缓存资源。