为什么开发小程序要比App简单100倍?

为什么开发小程序要比App简单100倍?插图

 

“在红海中博杀是没有前途的,所有的成功企业都是不同的。”

————  这是 Paypal 创始人 Peter Thiel 在作品《从 0 到 1》中写下的结论。

 

为什么开发小程序要比App简单100倍?插图1

 

过去互联网产品的快速发展得益于人口红利,前几年只要把握好流量就可以实现产品增长。

而今天,用户说产品好才是增长的核心,市场已从流量驱动转为创新驱动。

APP 作为用户接入移动互联网世界的桥梁和入口,无论对于传统企业还是互联网企业,都是市场营销的重要战场。

但是,传统的 APP 开发模式的门槛高、成本高、开发周期长、无法快速迭代,很难在应用交付上有突破性创新。

2017 年 1 月,微信小程序正式上线。

小程序是微信基于 xml 和 js 定义的一套标记语言、全新的生态、一个轻 OS,开发工具和 UI 框架都是腾讯自己做的,它依附微信、无需下载,也是一座流量富矿。

 

为什么开发小程序要比App简单100倍?插图2

 01 传统APP开发 vs 小程序开发

尽管,大部分团队已经意识到创新和高效很重要,但却依旧难以”敏捷“起来。

在传统 APP 开发方式下,应用交付需要经历这样的过程:

(1)一个 APP 从 idea 到上架商店,要经历 8 个步骤:设计流程→设计原型→设计 UI→前端代码→后端服务器搭建→后端代码→后端部署→测试→上架。由于是代码级开发,开发和测试周期都很长,成本高,调试出错率也高,开发好的应用也需要一定时间磨合才能稳定。在这个过程中若需要使用外部商业化 API,还需要支付昂贵的费用。

(2)过程中参与的人员至少包括 5 个人:Android + iOS + 后台 + 产品经理 + 美工。这对开发人才的要求很高,分别需要精通编程语言、数据库等。无论是物理托管,还是云主机维护,都需要投入较多人力物力,成本无上限。

(3)前后端联调、资源存储、部署等操作繁杂,上线流程耗时长。

(4)上线后需时刻关注环境运行情况,且由于维护时代码级修改导致产品新问题出现,调试过程也非常麻烦。

这些因素导致各环节和部门总体的效率不高,包括持续发布能力低、需求响应周期长、交付吞吐率低、交付过程质量低、交付质量低,业务部门提出的创新性需求也很难及时响应。

 

为什么开发小程序要比App简单100倍?插图3

微信小程序的交付过程是这样的:

(1)一般小程序从 idea 到发布,也要经历 8 个步骤:安装微信开发者工具→创建一个小程序→编译→前端代码→后端服务器搭建→后端代码→后端部署→发布。小程序框架本身所具有的快速加载和快速渲染能力,加之配套的云能力、运维能力和数据汇总能力,可以释放开发者的精力。且在语言上,小程序的前端开发学习成本较低。

(2)过程中依旧需要前端和后端开发的参与。

(3)提供丰富的微信原生 API,调用微信能力比较方便。相对于传统 APP 开发,微信小程序官方的开发文档较为丰富,开发语言门槛低,从组件到 API 都很全面,开发难度适中。且网络上有丰富的开源项目,方便开发者获取和比较。

 

为什么开发小程序要比App简单100倍?插图4

 

再看用云开发构建小程序的过程:

(1)从 idea 到上线,需要经历 5 个步骤:安装微信开发者工具→新建一个模板小程序→开通云开发服务→编译→发布,且整个过程为可视化操作,只需写核心逻辑代码即可。

(2)仅需 1 人即可完成开发。

(3)平台一体化,开发者无需关心服务器搭建和管理;项目一体化,前后端可以在同一项目内开发和维护。

(4)按请求数和资源的运行收费,投入按需付费。

如此看来,相对于大型互联网公司来说,中小型企业更希望低成本、低人力投入、快速上线和迭代的产品,可以优先考虑通过云开发构建小程序来承载。

 

为什么开发小程序要比App简单100倍?插图5

 

02 为什么开发小程序没有繁重的后台问题?

这几年高频的技术换新让开发者又爱又恨,所谓的“学不动了”,不单单包括语言,框架、工具还有很多理念思维上的内容。但若学无所用,它的性价比就会下降。

那么,腾讯如何帮助开发者最大化实现技术先进、研发高效和投入成本低?

1、拥抱 Serverless 设计理念。 

云开发是一个入口,目标是为了让开发者以更低的门槛,更小的成本接入云计算服务,实现应用快速开发。同时这也是服务上 BaaS(后端即服务)+FaaS(函数即服务)的体现,尤其是云函数的设计,可根据请求量弹性横向扩展,开发者只需关注核心代码,不再参与基础设施架构设计。

2、从产品生态方面来说。

云开发和微信生态打通,技术拥抱产品生态,打通了客户端和云资源的链路,一个云端服务支撑多端应用,实现一次开发,多端运行。

3、工具丰富。

从数据库,存储服务,API 到云函数,云托管基本上涵盖了所有的开发流程节点,每一个上手门槛都很低,只需浏览文档对应模块即可。

4、可视化程度高。

云开发正在朝着无代码或者低代码设计微信小程序的趋势发展,这样非开发人员可以直接设计应用,进一步降低门槛。

 


为什么开发小程序要比App简单100倍?插图6
传统开发模式与云开发模式的对比

 

在传统开发模式下,开发者需要更多关注文件存储、备份、容灾等,但是云开发模式下就只需要关注与业务逻辑相关的数据库、文件存储、云函数。

目前,小程序开发主要采用云开发的模式。

现在,我们整体对比下,实现同样的功能,APP 开发者和小程序开发者需要解决的问题。

 


为什么开发小程序要比App简单100倍?插图7

 

很明显,如果一个全栈工程师沉浸在繁重的编程和运维上,那么,遇到具体业务问题时,还怎么有充足的精力和经验来解决,面对新的需求还怎么快速响应。

我们先不去讨论全面自动化或零代码有没有可能,从这几年的发展趋势来看,拥抱 Severless、低代码、可视化,已经稳稳抓住了程序员和企业技术架构的痛点。

小程序云开发已成为软件开发效率提升的突破点,越来越多的业务需求可以得到有效解决。

03 哪些团队适合使用小程序云开发?

 

云开发可以真正意义上实现前后端包揽的“全栈”,用在以下这几个场景尤其合适:1) 传统企业 / 存量业务需要快速迁移上云时,不希望改造代码或重构业务的,云开发可以提供免运维的后端云服务,适用于传统企业、存量业务;2) SaaS 厂商需要多租户隔离时,云开发可以支持环境级别资源隔离,每个环境有独立的一套后端云服务;

3) 中小企业希望享受自动化运维和托管服务时,可以使用云开发的后台服务托管, 实现可视化操作,释放运维压力;

4) 初创企业或是企业内部创新孵化时,希望可以快速验证商业模式,可以使用云开发快速部署和上线


为什么开发小程序要比App简单100倍?插图8

 

通过云开发模式,微信读书小程序的前端代码和服务端代码共存在一个项目中,同样的技术栈、同样的 IDE 环境,可以调试开发更高效。同时,云函数支持动态扩容,可以完美支持瞬间增长的运营类业务。

此外,云开发还让其团队的分工和成员能力发生了显著变化。以前其团队按照前端开发、Node 开发和运维人员进行分工,现在前端负责全栈开发。

团队成员除了前端技术,还更关注服务性能和稳定性,资源利用率(如云函数耗时、云数据库连接数等)。

微信读书使用云开发的具体逻辑如下图⬇⬇⬇
为什么开发小程序要比App简单100倍?插图9

 

从小程序端获取的数据通过云函数、云存储等功能传输到 Server 后台,并生成业务发展数据的报表,相当于一套从后台到前端的完整服务。

为什么开发小程序要比App简单100倍?插图10为什么开发小程序要比App简单100倍?插图11

更多小程序开发详情请联系56乐科技团队 4001860061