技术推荐 | 两三天一个小程序之云开发技术
如果你想要有自己的项目或产品,小程序是你的不二之选,而云开发将帮助你事半功倍倍倍倍倍*N。熟练后,几天一个小程序完全不是问题。
目前,各大主流互联网公司都在推行小程序生态建设,比如微信小程序、支付宝小程序、百度小程序、字节跳动小程序等。
而QuestMobile报告显现,截至19年4月底,微信、支付宝和百度的小程序数量分别为230万、20万和10万个,估计到年底会到达500万个,这意味着年底小程序数量将超越原生APP(2018年底国内APP数量449万个,增长迟缓),小程序很快就会取代APP成为第一应用生态。
这一趋势归因于小程序的独有优点,以微信小程序的优点为例:
- 用户多(十几亿),流量大
- 小程序无需安装,使用方便,用户体验好
- 依托平台,社交裂变,易于分享
- 对于开发者,相对于APP更易开发,生态广
- 小程序功能强大,足以满足大部分需要
- 依托微信,安全可信
传统开发
一般开发一个系统,我们需要开发前端和后端。
前端即用户看得见、听得见、点得到的可视界面。
后端则为支持前端,默默操作数据、提供服务,承载流量。
同样,开发小程序,我们也需要开发前端和后端。
小程序前端的开发方式主要有:
-
官方原生语法(wxml和weui)
-
封装框架(WePy\MpVue等)
-
大前端框架,一套代码可编译至多端运行(Taro\Chameleon等)
-
直接购买或者可视化拖动(要买就直接上腾讯云吧,正规)
而后端需要我们自己开发,各大主流语言如Java、Python、Golang、C++都可以。然后还要搭建一个数据库,租一个服务器等等。。。非常麻烦,这也是导致很多同学的技术栈过窄,只局限于前端或后端,无法开发出功能丰富的作品/产品的主要原因。谁不想简单一点呢?
而现在,一种新的技术“小程序云开发”出现了,让很多没有后端基础的同学也可以成为“全栈开发者”!
首先介绍一下何为云?
何为云?
云有如下定义和特点:
-
成千上万的服务器,组成了海量网络节点,像云一样无处不在
-
用户无需购买硬件,即可迅速创建、释放或使用任意资源
-
云已覆盖全球,足不出户使用世界各地的云设备
-
包含云服务器、云计算、云存储、云数据库、云函数等各种资源
-
由专业厂商提供服务,如腾讯云、阿里云、百度云、搬瓦工、Vultr等
那么什么是云开发呢?
何为云开发?
腾讯官方的定义是:云+端一体化,快速构建小程序、Web和移动应用。
在传统开发中,我们需要自己准备后端服务器、数据库,并且开发接口。此外,如果是企业级应用,可能还需要考虑如下特性及功能:
-
文件存储
-
高可用
-
高并发
-
高扩展
-
冷备热备
-
内容加速
-
网络防护
-
异地容灾
-
负载均衡
-
安全加固
-
监控告警
-
弹性伸缩
-
容器服务
-
网络专线
而实际上,我们的核心关注点应该是业务逻辑,过多的非业务逻辑需要处理,将导致开发效率极低。
而且在团队开发时,如果前后端分离联调,会导致上线效率低等问题,而做全栈会很舒服。
是否有一种新的开发模式,可以让开发者可以更专注于业务逻辑呢?
云开发应时而生。
云开发是由腾讯云和微信团队联合开发,集成于小程序控制台的一站式后端云服务。帮助开发者快速全栈开发并上线小程序。
云开发包含以下核心功能:
能力 | 作用 | 说明 |
---|---|---|
云函数 | 无需自建服务器 | 在云端运行的代码,微信私有协议天然鉴权,开发者只需编写自身业务逻辑代码 |
数据库 | 无需自建数据库 | 一个既可在小程序前端操作,也能在云函数中读写的 JSON 数据库 |
存储 | 无需自建存储和 CDN | 在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理 |
云调用 | 原生微信服务集成 | 基于云函数免鉴权使用小程序开放接口的能力,包括服务端调用、获取开放数据等能力 |
HTTP API | 通过HTTP,实现小程序外访问云开发资源 | 使用 HTTP API 开发者可在已有服务器上访问云资源,实现与云开发的互通。 |
传统开发模式 VS 云开发模式
传统开发模式:
云开发模式:
此外,云开发还有一些增值能力,如音视频、AI、短信等。
以开发”文件上传“功能来对比:
传统开发:前端+后台+运维,至少耗时120分钟。
云开发:仅前端,仅需5分钟。通过wx.chooseImage和uploadFile接口,直接将文件直接上传至腾讯云存储和托管,省时、安全、可监控,免运维。
以开发”插入数据“功能来对比:
传统开发:前端+后台+运维,需要自己搭建维护数据库,至少耗时90分钟。
云开发:仅前端,仅需2分钟。通过云开发的数据插入接口,快速入库至腾讯云,保障高性能和安全性,在小程序控制台还可以随时对数据库进行可视化监控及管理。
可视化管理数据库:
简直不能再香了!!!那么如何使用云开发呢?
如何使用云开发?
很简单,创建小程序后,直接打开微信开发者工具,点击”云开发“,申请就可以了,10秒钟一套环境。
对于小型产品,免费版完全够用!
官方文档
建议直接看文档去敲代码,会用就行。
之后会整理大前端框架+云开发结合的小程序项目经验和技巧,敬请期待!