微信小程序的架构主要由前端框架和后端服务组成。
前端框架
微信小程序的前端代码由 wxml 、wxss 、js 以及小程序框架提供的 API 组成,其中 wxml、wxss 和 js 负责构建小程序的界面和逻辑 js 和小程序框架用来处理网络请求和数据绑定等。
微信小程序是双线程的,有渲染层和逻辑层两个执行环境,渲染层负责页面的渲染和样式,逻辑层负责小程序的逻辑和数据处理。
- 渲染线程:负责渲染界面,包括解析 wxml,wxss,样式计算,布局排版和绘制视图等操作。
- 逻辑线程:负责处理业务逻辑和数据处理,包括调用小程序的API、处理事件,请求网络等、
- 为什么要使用双线程,双线程的好处,请参考这篇文章。
两个线程通过微信客户端提供的 webview 通信机制进行数据传递和事件触发。【WxJsBridge】
后端服务
微信小程序除了前端框架,还涉及到后端服务,微信提供后端服务,包括身份验证,数据存储,消息推送等功能,同时还提供了云开发能力,简化了后端服务的搭建和管理过程。
此外,还有组件库用于构建各种界面元素和交互组件,调试工具用于代码调试和页面预览,以及小程序管理后台用于管理和发布小程序。