1 基本原理
即在微信APP环境中运行前端页面,同时微信提供了jssdk一套拥有微信APP原生能力的工具包给小程序调用。(微信公众号也类似这种情况,完全的html,js页面,可调用jssdk工具包。)
网页开发工具包,称之为 JS-SDK,开放了拍摄、录音、语音识别、二维码、地图、支付、分享、卡券等几十个API
2 webview
众所周知,网页在APP中都是通过webview加载的。可通过以下的知识链接,了解APPwebview的加载方式。一定程度上也可以理解小程序的生命周期等
APPWebView加载网页全面解析
WebView与JavaScript的交互总结
但是webview加载网页的性能是很差的,所以小程序对于此问题做了很多优化处理,如下
3 jscore
小程序为了提高性能,将js逻辑层和页面渲染成放在两个不同的进程里。如下图所示:

微信小程序的开发技术上是使用一种类似 React Native 的框架来保证程序的原生性和稳定性。
相关资源:
深入理解JSCore:www.cnblogs.com/meituantech…
4 Web 资源离线存储提高性能
微信为小程序提供了5M的存储空间,用户第一次加载时会把小程序资源缓存到本地,之后重新打开小程序会先从本地读取数据。当然,如果该小程序长时间不使用,微信会清除其缓存资源。