微信小程序开发相关技术的介绍分析
目录
微信小程序开发相关技术的介绍分析 1
1.1微信小程序介绍 1
1.2微信小程序开发技术介绍 1
1.1.1云开发 1
1.1.2CMS内容管理系统 3
1.1.3云函数 3
1.1.4云数据库 4
1.1微信小程序介绍
微信小程序是一种运行在微信中的应用服务,它用完即走,不需要下载安装。它使得应用“触手可及”,用户可通过用微信扫一扫或搜索打开应用。也可通过点击微信好友分享的小程序链接打开使用I201。
微信小程序的功能主要包括:在线/离线扫描、通知提醒、程序切换、信息获取等。依据腾讯公司所发布的API文档与微信开发者工具进行开发,其主要有以下几个特征:
①类web应用程序;
②即用即走,不占用内存;
③基于微信跨平台;
④媲美原生操作体验。
1.2微信小程序开发技术介绍
1.1.1云开发
云开发(TencentCloudBase,TCB)是腾讯云提供基于腾讯云原生终端技术开发一体化的后端开发平台环境和后端软件开发工具管理平台,为广大用户提供
了高性能可用、自动化的弹性和可扩缩的后端云服务,包含了云端计算、存储等工具serverless一体化终端开发管理能力,可广泛应用于实现云端开发一体化的多种类型终端开发应用,帮助开发者统一地组织构建和规划管理其后端开发服务与应用云开发资源,避免了在软件应用技术研究与产品开发的工作过程中繁琐的终端服务器系统搭建及运维,开发者也因此可以更加好地专注于各种终端业务处理逻辑的综合设计与分析实现,开发的技术门槛也就更低,效率也就更高。云开发平台的整合开发在用户进行微信小程序时,无需自行安装或直接搭建任何平台服务器,使用微信云开发平台的API就可以轻松进行微信核心产品业务的整合开发,从而用户可以轻松实现快速的产品上线和迭级换代。
小程序的原生编程接口、云端语言SDK均使用javascript汇编语言等来进行程序编写,主要目的是为了更好实现小程序的各种逻辑功能,其中程序渲染逻辑层的界面通常是同时使用多个webview进行渲染,逻辑层是同时运用多个jscore的线程来运行写在js上的脚本一个小型的程序,所以程序渲染逻辑层内部通常是同时存在多个webview线程。2个线程之间的数据通信将同样会经过微信的一个客户端接口作为线程中转,逻辑层向微信宿主网络环境代理发送的宿主网络代理请求也同样会经过微信宿主网络环境转发[21]。
云开发的三大基础功能:
云函数:可以在客户端或云开发控制台写,二者可同步,每个用户不必自建服务器,调用这个函数就是调用服务端的接口。
云数据库:每个用户不必自建一个数据库。既是一种可以在小型应用程序的数据前端自动进行读写操作,也是一种能在各种云函数中自动进行数据读写的JSON的数据库。
云存储:每个用户不必自建云存储及文件CDN。在小型程序的系统前端直接可以进行文件上传/直接下载文件到基于云端的数据文件。
它弱化了后端以及运维的基本理念使得开发人员不必搭建一个服务器就已经可以直接利用微信开发平台所能够提供的API即可完成小程序核心的业务开发。,图2-1为云开发中开发云端与小程序端之间的调用模式22]。
小程序开发云端
小程序开发云端
云数据库
调用
调用
小程序端
云函数云存储
调用
图2-1开发云端与小程序端之间的调用模式图
1.1.2CMS内容管理系统
云开发CMS内容管理系统是云开发提供的一个扩展程序,系统构成见图2-2,可以在控制台安装在程序的云开发环境中,使得开发人员和内容运营者能够随时随地管理小程序/Web等多端云开发的内容数据。
管理界面
管理界面
(Hosting+JSSDK)
登录鉴权API
(KOA+云函数+自
定义登录)
图片/文件存储云存储
Init脚本API
(云函数+管理
端SDK)
数据层API
(云函数+服务
端SDK)
数据存储云数据库
图2-2云开发CMS内容管理系统构成图
1.1.3云函数
云函数不需管理服务器就可以在云端运行,可以在客户端或云开发控制台写,二者可同步,它是一段在开发工具编写后,上传部署即可运行的后端代码。
小程序内提供了专门用于云函数调用的API。开发者可以在云函数内使用Wx-server-sdk提供的getWXContext方法获取到每次调用的上下文,无需维护复杂的鉴权机制,即可获取天然可信任的用户登录态。
如需在云函数中操作数据库、管理云文件、调用其他云函数等操作,可使用
官方提供的npm包wx-server-sdk进行操作。
1.1.4云数据库
本文设计的