忽如一夜春风来。国内开发者圈最近的热门话题莫过于微信的小程序,也很合理,当下没有任何一个APP能达到微信这种万人瞩目的量级。当我们的睡前最后一眼和醒来第一眼都给了她的时候,如张小龙所说,微信已经成为了一个生活方式。而微信的小程序最直观的联想就是一个搭载在微信里的App Store,这意味着一个覆盖6亿人口的大市场裂开了一个新的流量入口,这对所有开发者来说好比获得了一次重新洗牌的机会。错过了苹果App Store的你,还舍得再次错过微信App Store吗?

幻想总是美好的,但是当我去仔细研读微信小程序的文档,又发现我们都误解了微信的本意,或者说,小程序的出发点本来就不是为了取代或重建App Store,正如文档的第一句所说的,这只是一种新的开放能力

小程序不能做游戏和直播

在苹果App Store畅销榜上最吸睛的就是游戏和直播类应用(前40名35个游戏,5个直播),结合微信的天然传播能力完全有出现新爆品的可能性。然而「微信小程序平台运营规范」却赫然写着:

3.4 微信小程序的服务范围需与实际填写的类目和标签一致,也需和自身所提供的服务一致,且不应超出小程序平台的类目库范围。如游戏、直播、虚拟物品购买功能等均尚未开放。

个人猜测这个规定的背后有两方面的考虑:

一是与苹果的交锋与妥协,小程序的诞生必然会分流App Store的关注,而抢走App Store收入最大头的游戏和直播,无异于虎口夺食,苹果是万万不敢答应的,从小道消息传出的由「应用号」改名叫「小程序」也是类似的道理。

二是出于用户体验的考虑,我相信微信OS(像某个段子说的,微信将来会占用50G空间)并不是张小龙的目标,事实上微信也不需要成为一个OS,微信的核心始终是一个社交工具。而游戏和直播,与社交都有一个共同的特点,就是花时间,用户的时间被游戏和直播带走了,必然社交的关注度就会有所降低,最终受伤的是微信本身。当然,从技术角度出发,设备性能、网络条件和缓存空间的限制也不可能放任游戏和直播在微信体系的生长,这会影响到微信使用的流畅程度。

小程序的大小被严格限制

小程序源码打包后的大小限制为1M,单次通过网络传输的数据最大也是1M。

1M也就是十张高品质压缩图片的大小,与App Store动辄上百M的应用相比,小程序还真是「小得可怜」。而单次网络请求的数据量限制也决定了热更新只能采取小碎步快跑的方式。微信小程序对于大小的限制说明微信并不希望大家去开发很重的小程序,也不希望小程序加载庞大的资源文件。以目前的4G网络,1M的小程序大约只需要3-5秒即可加载完毕,真正做到来了就用,用完就走。如果加上坊间流传的20个小程序的限制,那么小程序不算网络加载的话只会给微信带来额外的20M左右的负担。小程序是真正的「小」程序,是为开发者提供一种新的连接用户的能力,而不是喧宾夺主、自成体系

小程序无法实现单页的分享

小程序由于没有包含WebView控件,开发者无法在小程序内部打开一个网页(所有的网络通信只能在客户端与预设域名之间进行),既然如此,任何一个微信小程序的页面都无法以一个标准的资源标识符(比如URL)代表,自然也就无法分享。之前某科技媒体评论到,像今日头条这类的资讯浏览类需求适合用小程序实现,当时我就呵呵了,要知道以内容传播为核心的产品分享向来是不可或缺的一环。之所以这么设计,我想是因为微信已经拥有了一个超乎强大的以内容传播为核心的体系 — 公众号。由公众号提供资讯,由小程序提供服务,不存在谁取代谁,两者相辅相成

小程序的推送需要用户激活

当用户在小程序内部提交过表单或者完成过支付后,可允许开发者向用户在7天内推送1条预设模板的信息。

一如既往,微信对于打扰用户的行为是深恶痛绝的;体现在小程序上,就是只有用户想起你才去用你,用户没想你不能主动去唤醒他。相比于苹果APNS没有明确频率限制的推送,简直天差地别。如果你的产品是需要用户高频率、高互动、高粘性的,就不太适合以小程序为载体。毕竟,你不可能被允许在微信内部再造一个微信。

关于小程序的小知识

  1. 小程序并不是H5,而是一种类似React Native的技术,微信将小程序的标记语言翻译为iOS或安卓指令,执行效率类比原生APP。
  2. 官方明确不允许小程序内部推荐其他小程序,ByeBye to 小程序导航/小程序推荐/小程序搜索。
  3. 小程序可以通过二维码和搜索进入,当然,诱导分享仍然会被强力管控。
  4. 同时打开页面最多5个,不适合做太深层级页面的交互。
  5. 小程序不支持cookie,同时账号体系只能使用微信的。

小程序是另一次洗牌的机会吗?

我觉得不是。

从08年Jobs发布iPhone起,智能手机的销量以指数级增长;到14年10月,移动端的流量全面超过PC端,移动互联网的春风带来了上一次洗牌的机会,有的人被赶下牌桌了(像百度),也有的人牢牢抓住机会狠狠赢了几把。但仔细一想,移动互联网的窗口期可分为三个阶段:

  1. 新的服务。手机和PC相比具有便携性、多传感器和随时在线的特性,对这部分特性的深挖造就了第一波的窗口期,像陌陌(利用了地理位置)、Instagram(利用了相机)、荔枝FM(利用了麦克风)、微信支付(利用了指纹传感器),这些APP所提供的服务,在PC端都很难实现,或者会大打折扣。
  2. 新的场景。随着智能手机的进一步普及,人们越来越懒得开电脑,干脆用手机去使用和PC上相同的服务。于是移动端的搜索流量超过了PC端、移动端的购物量超过了PC端、移动端的阅读量超过了PC端、端游也一步步向手游转移。
  3. 新的用户。当千元机成为市场的主流,当通信资费相对生活成本的比重快速下降,原本离互联网很远的人群(三线城市的居民、中低收入者、老人,比如我爸妈十多年都没学会电脑怎么开机,现在微信已经能用得比我还6了)也逐步被纳入到移动互联网的体系之中,这创造了一个新的增量市场。像快手这种向增量人群提供细分服务的APP开始崭露头角。

而微信的小程序,这三点哪里都不占:植根于移动端之上,并不能提供超越原生APP的能力,相反有所阉割;也并没有创造新的场景或机会。这一局里最有利的,仍然是那些已经在牌桌上的人,他们拿着现有的牌,大胆走向新的赌局。

但是,如果开发者立足于微信自身,利用好这一种新的开放能力,想方设法服务好微信的用户,强化实体与用户之间的连接,而不是去颠覆什么,虽然洗牌遥不可及,还是能有多几张牌可打的

不管怎么说,这至少会是前端工程师的春天,继React Native之后的又一重磅消息,连我都想去学JavaScript呢。

微信小程序,不可不知的一二三四相关推荐

  1. 微信小程序开发教程第七章:微信小程序编辑名片页面开发

    前面我们更新了六篇的微信小程序开发教程,现在更新第七章:微信小程序编辑名片页面开发,(第一二章:微信小程序开发教程,第三四章:微信小程序项目结构以及配置&微信小程序首页面开发,第五章:微信小程 ...

  2. 微信小程序开发教程第八章:微信小程序分组开发与左滑功能实现

    接着上面微信小程序开发教程第八章:微信小程序分组开发与左滑功能实现.(第一二章:微信小程序开发教程,第三四章:微信小程序项目结构以及配置&微信小程序首页面开发,第五章:微信小程序名片夹详情页开 ...

  3. 微信小程序应用号开发教程!博卡君通宵吐血赶稿

    微信应用号(微信公众平台小程序,「应用号」的新称呼)终于来了!开源中国社区的博卡君通宵吐血赶稿写出的微信公众平台应用号开发教程!大家赶紧来学习一下吧 对了,昨天晚间微信小程序开发文档官方版发布了 微信 ...

  4. 一个月一个微信小程序(个人开发)---“助你考公“(一周年纪念礼物)

    一.项目背景 与女友一周年纪念日即将来临的前一个月,突发奇想想写个小程序作为礼物(她考公).八月多还在实习,所以白天大多数时间是工作的,只有晚上和周末,以及九月上旬的完整时间. 二.项目构思 小程序, ...

  5. webview 个人小程序_微信小程序新增Webview它是什么东西?

    原标题:微信小程序新增Webview,它是什么东西? 今天刚刚给客户做完案子,正准备去睡觉.2017 今天刚刚给客户做完案子,正准备去睡觉.2017年11月3日 11:29看到了微信公众平台推送的小程 ...

  6. 程序员黑科技 | 用13块钱DIY微信小程序浇花神器

    作者:iotzheng,腾讯TEG平台开发工程师(江湖人称IoT小能手) 前言 去年7月的时候,公司办了一场王者荣耀大赛,我和同事们也报名参加了.首局比赛就给我们泼了冷水,"深圳湾一号业主& ...

  7. SAP UI5和微信小程序对比之我见

    今天继续由SAP成都研究院著名的菜园子小哥Wang Cong,给大家分享他作为一个SAP前端人员是如何看待SAP UI5和微信小程序的异同点的. 关于Wang Cong种菜的手艺,大家请移步到他以前的 ...

  8. 微信小程序 fire_如何在Fire TV和Fire TV Stick上侧面加载应用程序

    微信小程序 fire Amazon's Fire TV and Fire TV stick technically runs Android-but you wouldn't know it from ...

  9. 微信小程序入门一: 简 介、文本、事件、样式

    现在微信小程序已经推出了,我也来这里尝一下鲜. 小程序简介 原生APP和Web APP谁是未来的主流这个命题争了很多年,而原生APP最大的优势也就是对于系统控件接口和框架的调用能力比Web APP不知 ...

最新文章

  1. linux内核第一个函数,通过内核源码看函数调用之前世今生 - 极光 - CSDN博客
  2. MVC用非Entity Framework将数据显示于视图(二)
  3. 9、计算机图形学——纹理的应用(环境贴图、凸凹贴图、法线贴图以及位移贴图)
  4. [系统安全] 六.逆向分析之条件语句和循环语句源码还原及流程控制
  5. python中configparser详解_Python中的ConfigParser模块使用详解
  6. 异常检测时间序列_时间序列的无监督异常检测
  7. 视觉开发需要什么程度的数学_软件开发需要学好数学吗?
  8. oracle树子类遍历父类_不懂数据库索引的底层原理?那是因为你心里没点b树
  9. 【CSWS2014 Summer School】大数据下的游戏营销模式革新-邓大付
  10. desktop.ini winxp之马上更新图标
  11. java小例子mysql_Java 访问MySQL的小例子
  12. Android一键反编译工具 jadx
  13. 通过注册表永久禁用系统UAC功能
  14. 个人微信公众号申请步骤
  15. asp微信扫码签到源码
  16. 微信开发者工具-调试器
  17. 解一元二次方程-Java语言实现
  18. 为什么有些大公司技术却弱爆了?
  19. 神兽保佑,永无BUG
  20. Bitmap 处理图片修改为透明背景,改变主颜色

热门文章

  1. 单片机-stm32-使用cdc类实现vcp(虚拟串口)
  2. 智能红外遥控器(五):手机蓝牙控制格力空调
  3. 梅科尔工作室——鸿蒙设备开发实战004:内核开发
  4. android 蓝牙串口自动断开,uni-app 蓝牙连接被自动断开问题
  5. 使用U盘启动盘安装Imperva MX13.0
  6. 操作系统——MFC实现进程创建和通信4
  7. android 防刷机
  8. 【阿里云ECS使用FTP】使用FileZilla连接阿里云Windows服务器
  9. AMD发布23.2.1 新驱动 支持开年新作《魔咒之地》
  10. 网络基础 IP协议 子网划分 子网汇总 超网 无类间路由超详细介绍