Rychou'blog

漫谈微信小程序

2018-12-09

一、微信小程序与传统 App 的对比

优点:

1. 开发成本

成本与收益永远是商家最关注的两个核心问题。一般传统 APP 的开发费用普遍都是 5 万以上左右,对于部分大型企业客户的收费基本是在 10 万以上。目前,微信端小程序收费不高,基本可在万元内。事实上,两者后台调用的数据库并无区别,只是传统 APP 的前端更花一些功夫罢了。传统 App 分有 Android 和 IOS 开发,而小程序开发更加接近于 Web 开发。总体而言,传统 APP 的开发成本要高出微信小程序很多。

2. 推广成本

相信大家也见过,有一类的兼职就是 App 推广,推荐一个人下载安装 App 就能得到 6-10 元的回报。而小程序并不需要这样,即点即用。主要的推广模式是靠分享推广,所以你肯定见过这样的套路:在玩某些小程序游戏的时候,如果你死了,小程序会提示你分享到一个群里就可以复活,这样由用户自发的推广,可以说是 0 成本,但是又是高收益的。

3. 安装方式

传统 APP 应用需要用户自行下载安装,微信小程序则只需要用户简单扫描一下微信二维码或自生(开发出来的)即可轻松实用,对于大量具有线下经营实体的商家而言,无疑更为合适,对于用户来说,也更简单方便。

4. 空间占用

传统 APP 安装到手机之后,或多或少会占用一定的手机空间。同时,商家为了强化自身的 APP 应用价值,开始罔顾用户需求,不断给 APP 增添各种附加功能,从而导致 APP 的体积和占用空间不断增大。诸君可曾见,哪个 APP 是越升级,体积越小?占用空间越小的?

那小程序是否会占用手机空间呢?答案是肯定的。

小程序所占用的手机存储空间,主要有以下两个部分:

  • 首次加载小程序时,微信从服务器上下载的小程序本体。
  • 小程序在运行过程中,存放至本地的数据。

首先是小程序本地的大小,做过小程序开发的应该都知道,微信对小程序的体积做了限制,只有 2 MB 以内的小程序,才能提交到微信审核。也就是说,如果你无法提交代码大小超过 2MB 的小程序。

其次是小程序存放在本地的数据,这个微信限制在 10MB 以内。

一个小程序可占用存储空间的上限,大约是 12 MB。

5. 卸载残留

由于传统 APP 都需要用户下载安装,基于利益角度考量,用户在卸载的时候,传统 APP 依然或多或少地有部分内容残留在用户手机里面。

小程序删除时,微信会帮你把本地的小程序本体和本地数据删除

6. 升级维护

传统 App 升级需要用户自行下载,安装进行升级。而小程序升级省去了用户操作,开发者把要升级的版本上传到微信后台,微信后台会帮你完成所有的升级工作。

目前市场上主流的移动端系统为 Android、Ios,这意味着,App 开发商不得不考虑跨平台性,必须得开发两端的 APP。而小程序是运行在微信之上,微信本身已经处理好的跨平台性让开发者不需要考虑跨平台的问题。

缺点:

1. 不适用于复杂应用

2MB 的大小限制注定了小程序开发太复杂的应用,你不可能在小程序上面开发一款即时通讯应用。当然你开发是可以开发,只是过不了微信的审核罢了。

那有什么应用是适合用小程序开发的呢?

查询工具这类交互性要求不强的应用是最适合用小程序开发的。

这类应用本身只提供一个核心的功能,如果用传统 APP 开发,那就显地有点杀鸡用牛刀了。微信小程序就很适合这类应用。举个很形象了例子吧!超级课程表这 APP 大家都用过吧,它最核心的功能就是提供全国大学的课程表查询。它还开发了很多其他我没用过的功能。绝大部分的大学生,都是只需要他这个查询课程表的功能,所以如果用小程序开发这个应用,首先解决的跨平台的问题、其次还解决了空间占用的问题(超级课程表在我手机中占用的空间为 136MB)、还有就是用户即点即用,不需要下载安装。

2. 入口少

目前小程序的入口主要有两种,一是分享、二是用户搜索。这里要说的入口少指的是第二点,用户搜索的入口。

什么意思呢?大家如果想要安装一款 APP 首先要去哪里?应用商店。那小程序呢?你得打开微信,搜索你想要的相关关键字。这样的缺点是,用户比较难找到一款优质的小程序,因为并没有一个好小程序应用商店对小程序进行分类排名和评分来保障应用的质量。一个好的应用商店对应用的质量提升是很有保障的,爱奇艺很多人都用过吧,是否很烦它那烦人的广告呢?其实如果你从谷歌应用商店下载的爱奇艺,是没有广告的,因为有广告的 APP 根本过不了谷歌应用商店的审核。

二、微信小程序的开发方式

目前小程序开发的方式

前端

总的来说,目前有两种方式开发小程序,一是用原生小程序的语法来开发、二是用第三方框架。

微信为小程序开发自创了一套标签语言,如果有做过小程序开发和熟悉 Vue 开发的应该知道,原生小程序的开发与 Vue 的开发有很多相似的地方。

因此,微信官方自己推出了一套小程序开发框架Wepy(名字听起来怪怪的),这个框架就让小程序开发更接近于 Vue,官方介绍说是类 Vue 开发风格。

后来美团也整了一套开发框架mpvue,这个就厉害了,直接用 vue 来开发小程序,并且官方号称支持一套代码、多端公用(写一套代码,可以编译成 H5、微信小程序、支付宝小程序)。其实这个多端公用很鸡肋。

怎么一直在说 Vue 呢?有没有 React 呢?有的。

Taro:多端统一开发框架,支持用 React 的开发方式编写一次代码,生成能运行在微信小程序、H5、React Native 等的应用。

后端

这也有两种方式,一是和常规后端开发一样的,提供一套接口给前端使用、二是小程序云开发

这里重点讲讲小程序云开发,这是小程序刚出不久的功能,目的是弱化后端概念。开发者无需搭建服务器、使用微信小程序平台提供的 API 进行核心业务开发,即可实现快速上线和迭代,同时这一能力,同开发者已经使用的云服务相互兼容,并不互斥。

三、我怎么开发小程序

我的开发方式是这样的,如果是个人开发项目我会选择mpvue+云开发。如果是团队开发项目则mpvue+后端

我不选原生小程序开发是因为这需要一定的学习成本、其次我不想把自己限制在微信小程序开发中。选择mpvue你不仅可以做小程序开发还可以做Web开发

不选taro的原因是它的成熟度不及mpvue,现在选taro需要花时间去踩坑。

猫叫助手

使用支付宝打赏
使用微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏