2017 年 1 月 9 号凌晨,看完《星战》回家,发现朋友圈都炸了……原来是「小程序」如约公测(以下简称小程序)。果然贵圈人都睡得晚啊,一个个大半夜了精神得不行。
截图推荐什么的已经漫天都是了,而且连 「推荐小程序的小程序」都已经出现了,我们就直入正题吧,今天笔者不跟你们聊情怀,就聊体验:
体验完利益相关微票儿的「电影演出赛事」后,我在朋友圈里怒发了一条「实际体验小程序的感觉就是完全没有比普通的 web 体验更好…」,感觉评论里 @Cheeeee 都受惊了 > <。不过在多体验了几个小程序之后,我觉得我应该尝试更客观的回答这个问题。
这当然是毋庸置疑的,我的博客在微信里打开至今都是「非微信官方网页,继续访问将转换成手机预览模式」,然后点击「继续访问」就是「params is error」,我 &^*#.%…
而对于其他在微信中可访问的 web 应用来说,小程序有着自己的搜索入口、抽屉(历史记录),还可以「显示在聊天顶部」,这其实分别对应着 「拉新」、「包活」 与一定的「多任务」支持。尤其是后两者,与 PWA 的「添加至主屏」与「出现在 Task Switcher」里异曲同工。
正如 微信小程序和网页版程序的区别在哪里? – 冯雨的回答 – 知乎 里所说的,「订阅号、服务号、小程序,就是一个个静态或动态的 Web站点;二维码和消息气泡,一个现实一个虚拟,就是微信提供的超级链接。」
World Wide Web 在微信里是残废的,取而代之的是 Weixin/Wechat Wide Web。
值得一提的是,现在微信只会对特定小程序支持模糊搜索,而且据我目测都是诸如京东、滴滴这样的「国家队」。喏,在我地盘这你就得听我的~ ? ?
当我们在说「小程序的体验是否能比 Web 更接近原生应用」时,我们通常指的就是它的 capability。
先说 UI 性能,截止目前为止,小程序的大部分组件都还是使用 WebView 渲染的,这意味着在大多数组件场景下,小程序的 UI 性能不可能比 Web 更高。但是:
再说启动性能,这是让大家觉得小程序感知体验比 Web 好的第二个大因素:
最后是 Integration。通过私有的 JS SDK,小程序可以借助微信这座桥梁实现很多以往 Web 并不容易实现的体验。同样,这些改进也非常 tricky,只解决痛点问题:
(图为猫眼 App 与小程序,因为长得像…感觉不小心给老东家竞争对手打广告了?)
可惜的是,这些技术里面没有一项是「小程序」首创的,且大都有超过两年的历史:百度的 Blend UI、阿里的 Hybrid 容器、Google 的 PWA/AMP、Phonegap/Cordova、React Native/Weex……这也是很多技术从业人吐槽小程序在技术上毫无创新的原因。
但平心而论,崇尚「技术服务产品」的腾讯系在产品化上做的真心出色。这也是我为什么在 9 月 21 日知道小程序技术方案时夸赞「兼容并蓄 博采众长 且可持续性发展」的原因,并不是站在技术创新的角度,而是站在微信的角度上,这个决策拿捏在了 sweet point 上。
目前我所了解到的(截止 2017 年 1 月 9 日):
这三点都是可以直接影响到目前小程序的产品形态与设计的。当然,对于微信来说,这三点更多的是决策问题。作为 Weixin Wide Web 这个封闭生态的唯一「浏览器」,微信便是生杀大权。手起刀落之间,小程序的缺点随时可以被弥补,而 Web 的优点也随时可以被抹杀。
但是,现实可能并不会这么简单。我们发现,大部分小程序都只提供了其原生应用或 web 应用功能的一个子集。比如文章最早提到的微票儿的「电影演出赛事」小程序,与钱包里的 web 版本相比,UI 体验好了一点,但是功能远没有 web 版本来得丰富,也没有了 web 版本可以分享评论到朋友圈的能力。
(微票儿小程序与其钱包中的内嵌 web 应用对比,web 版的功能要丰富得多。)
微票儿(娱票儿)作为一家在微信里内嵌 web 服务起家的公司,一是证明了微信流量红利的可怕,二其实也证明了原有 web 的能力。作为「亲腾讯亲微信」的公司之一,其小程序比不上 web 应用可能只是时间关系。但是对于其他公司呢,尤其是未被腾讯「临幸」过的公司?而这其实对应着另一个更难回答的问题:
笔者自知无法回答这个问题,所以只能抛砖引玉一下:
具体到每一个 Web 与小程序 PK 的场景:
如果说阿里的「让天下没有难做的生意」是把话说开来「双赢」,微信「开放」平台和接入商之间的资源互换关系则更像是「权力的游戏」了:微信想借接入商来建立自己的垄断帝国,接入商却想玩暗度陈仓。某种程度上来说,Web 应用是自己的领地,值得在上面建立完整的体验。而小程序,可能会如小程序诞生前的「weixin-specific web」一样,很大程度上沦为拉新立牌坊的工具。
所以我们不妨再加一条:
4. 对于用户来说,小程序可能并不会「够用」,这是 Feature Set。
回到问题「小程序的体验比 Web 更好吗?」,我觉得各位看官心里应该会有自己的答案。对于不同的公司,不同的业务场景,不同的盈利方式,不同的团队,我相信这个答案都是不一样的。
But if you trade something off, make sure you get something in return.
如果你需要妥协掉一些东西,请务必换回点好处来。
作为一篇「试图做到客观(且非常难)」的文章,如果能对你有帮助,那就算没有白写了。
最后说两句题外话吧,上个月给《程序员》杂志交了拖了 N 久的稿,大概在本月底会发吧?
在那篇文章最后我写到,「笔者奢望着本文能对推动 PWA 的国内环境有一定的贡献」。眼见小程序在某种意义上 “polyfill” (大雾)了 PWA,作为一个在技术上略有 理想主义 的程序员,笔者也只能叹一句了:
「这不是我想要的未来。」
会是你们的吗?
分享: