关于微信小程序的一点思考

1 月 9 日,微信小程序如约而至,迅速占领了各大互联网媒体乃至科技媒体的头条,张小龙一条颇有寓意的朋友圈也随之扩散开来,可谓赚足了眼球。经过了一周多的时间,不少人从各个角度对小程序进行了解读,小程序已经不再神秘,所以下面的文字并不是关于小程序的评测,而是我个人对小程序的一点见解和思考。

小程序发布之后,很多公司或独立开发者面临的一大问题就是「要不要做小程序」?我给出的答案是:如果你现在还有 APP 之外的入口,那么就毫不犹豫的投入小程序的怀抱吧。本质上来讲无论是 APP、H5 或是小程序,都是用户使用服务的途径,多一条途径就可能让自己的服务被更多用户使用。而如果你提供的服务就是 APP 本身,那么小程序就不是你的菜。受技术上的限制,小程序还并没有达到 APP 的运行效率和灵活性;另外考虑到国内互联网公司的尿性,你也绝对不希望把自己的所有鸡蛋放在小程序这个篮子里。自然的,小程序也绝对不是一个好的创业渠道。

另一个引发广泛思考的问题就是:谁会是小程序时代的赢家?经过这段时间的体验和思考,我得出的结论是:除了微信,小程序不会有所谓的赢家。从技术角度来讲,小程序基本没有技术上的创新和突破。换句话说:使用 H5 技术配合微信的 JSSDK,几乎可以实现小程序的所有功能,因此小程序不会出现技术黑马。从商业角度来讲,任何一家有野心的公司都不会讲小程序作为自己的主要渠道,因为这一渠道终究是受制于人,因此小程序也不会出现商业黑马。考虑到以上两点,小程序最终的赢家只有微信 —— 不要被张小龙反复强调的「用完即走」洗了脑,用完即走出的是你的小程序,而不是他的微信 —— 无论从是提高装机量、用户粘度还是普及微信支付的角度来看,小程序对微信来讲都是一个只赚不赔的买卖。

上面说到小程序基本没有创新和突破,具体来讲,小程序大部分还是基于广泛使用的前端技术(HTML、CSS、JavaScript)实现的,或者可以说小程序就是一个 Hybrid App —— 微信只是在几个 Web 技术不太擅长的点(譬如 Tabbar)通过桥接 Native 做了一些优化。值得注意的是微信的做法是将常用的 Web 技术进一步进行了限制和封装形成了 wxml、wxss,在提供了数据绑定、自适应样式尺寸等方便开发者的特性的同时也对开发者做了严格的限制。一般认为的比较消耗资源的 DOM 操作等 API 在小程序开发中都无法访问到,这应该是小程序在效率方面相比于传统移动 WebAPP 有优势的主要原因。

从商业和技术的角度的角度对小程序进行了一番分析,那么小程序将给普通用户带来什么呢?最直观的来看,小程序给用户带来了除 APP 之外的一个新的选择。从应用的形态来看,很大一部分应用都可以通过 WebAPP 的形式来提供服务,再加上微信提供的各种 Native API 的加持,使得绝大部分应用都可以转化为微信小程序。这将会极大的降低用户触达服务的成本:用户无需通过繁琐的搜索、安装、注册等步骤,通过访问小程序并直接使用微信授权即可快速的享受到服务。从另一个角度来看,小程序的推广和普及会伴随着用户习惯的培养:智能机时代用户已经建立的先安装再使用的习惯会被小程序无需安装即可使用的模式所打破 —— 虽然 WebAPP 已经在技术上实现了这一点,但却很少被用户使用,因为 WebAPP 以域名作为入口对很多用户来说并不友好。而小程序以二维码作为入口,可以很方便的分享这两点恰恰填补了 WebAPP 的短板。

最后,我对「小程序」还有一点担忧:小程序或许会带来技术的分裂,这里的小程序并不特指微信小程序,而是指其他厂家推出的类似服务。可以预见的是如果微信小程序试水成功,必然会引起各大互联网厂商、甚至终端厂商的效仿,如此一来市场上很可能会出现各种各样的小程序 —— 「支付宝小程序」、「百度小程序」、「小米小程序」、「华为小程序」等等,而且这些小程序必然都是自己搞一套自己的标准,各自为政。如果真的出现了这么多小程序,我们很可能面临「所有小程序都是基于相同的技术,但彼此就是不兼容」的尴尬境地 —— 这是一个 Web 手艺者不愿看到的情况。