您的位置 首页 > 娱乐休闲

微信小应用会重蹈Applet和Flash的覆辙吗?

点击右上角,关注本头条号,与你分享最新科技生活故事。

我前几天才写了篇文章,大言不惭的假冒张小龙,说微信应该做成操作系统,但木有想到人家这么快就搞出来了微信小应用。

具体的消息朋友圈今日头条已经刷得够多了,基本都在号召大家放弃原生App,投奔微信小应用。

我得实话实说对此看法不同,作为一个远离一线编程多年的老码农,不敢班门弄斧说太多技术。 但作为一个多年经验的IT互联网从业者,我可以聊聊小应用对商业模型和生态的影响,请大家多打赏少喷口水吧。

如果仅就张小龙对微信小应用的定义而言,令我想起了多年前死掉的Java Applet和就要死掉的Adobe Flash。曾记得当年刚推出Applet时,也有很多人说桌面软件要玩完了。

目前看来微信小应用提供的主要模板和控件,与Java Applet和Flash/Flext也比较接近,区别只是更接近手机操作习惯而已。

如果对比下双方的架构图,那也是非常的相似 - 这貌似一句废话,轻客户端的架构,不都是利用一个普及度较高的中间层(浏览器vs微信App),来帮助实现交互层的通用化吗?

这事似乎很简单? 微信小应用就是想复制PC时代Applet和Flash/Flex的故事?

软件应用中,计算和存储到底偏向服务端还是客户端,随着网络传输能力的变化,一直是不断改变的。最早的C/S架构时代,受制于网络速度,大部分计算都需要发生在本地, 因此富客户端流行。每个软件都需要自己的安装包,且为了兼容各个操作系统,还常常得维护不同的版本,做各种兼容性测试。

随着网络发展和软件种类的增多,加上浏览器轻客户端的逐渐流行。 火爆一阵后挂掉的Netscape、火爆几阵挂掉的Sun、以及不温不火目前还没挂掉的微软,联合推出了Java Applet技术。 即利用浏览器运行JVM,然后在客户端运行Java代码实现更加复杂的交互需求, 同时又可充分利用Java的跨平台特性,避免复杂的测试和维护成本。

理想总是美好的,现实总是残酷的。 Java Applet热抄了没几年,几乎没有见到什么流行的应用,就被Java Script + Adobe Flash/Flex一脚踢出局。

当然,之后Flash/Flex和H5又火拼了几年。眼见Adobe投降,H5就要胜出了,又迎来了移动互联网和智能手机时代。整个操作系统底层和交互形式一变, H5又和移动App又干上了。

作为移动时代富客户端的App,正要宣布自己的胜利,微信又跳出来准备扛起当年浏览器的大旗。

鹿死谁手,尚未可知

回顾了这么多故事,其实只是想借鉴下这波澜壮阔的历史,来仔细思考微信小应用带来的价值和存在的风险。

其实具体的价值在我我看来,已经说得很清楚了。

  • 轻量级: 用户无需下载应用,或者说每次应用只是下载执行代码而已,微信自身会变成一个拥有丰富类库的JVM或者操作系统。

  • 跨平台: 将适配不同平台的这种难题,交给了微信和微信提供的类库和控件。

  • 微信生态: 可无缝集成微信API,使用微信的社交相关数据和服务。

  • 微信分发: 可以使用微信平台分发小应用,不但绕过应用商店,还能由于其天生的社交属性,获得更好的传播效果。

其实第一第二点,和之前那些烈士们包括H5想做的事情没有什么不同。只有第三点第四点,才是之前都没有的微信特色。所以,可以很不负责任的瞎猜:

微信小应用=微信版的H5+微信SDK+应用商店。

那么回顾历史,死在沙滩上的前浪们遇到的困难也是通用的,最大的风险也很可能出现在这些地方:

  • 当微信自身必须提供大量控件和类库的时候,它还能不能维持在轻量级?

  • 需要支持不同硬件包括各种传感器的时候,它的跨平台表现还能不能像微信单一应用那样好? 毕竟微信平台和硬件的通讯还是隔了OS。

  • 既然微信本身不是操作系统,对交互和显示硬件的控制同样受OS限制, 运行在上面的小应用受到的限制更多。与Native App的用户体验相比,会有多大差距?毕竟微信的市场主要在中国,还没有强大到能够驱动改变基础的软硬件。

  • 最后,当年Applet死掉的原因之一是Sun的2B基因过旺,而忽略了2C的需求和特性。 如今微信却恰好反过来, 如何能引入2B基因,打造一个真正通用的跨平台系统?

微信不同于浏览器的优势也很明显,但也可能成为另一种风险的源头:

  • 微信的安装很普及,但毕竟比较单一。 如果真的想替代大部分app,就需要满足到社交、电商、工具等多种不同场景,很容易顾此失彼。

  • 微信如果离开社交核心,向app开发、测试和分发领域进军,那就是去动上下游的奶酪,怎么协调关系怎么合作,都不是一个小工程。

那么如何控制这些风险呢? 我认为微信如果真的要颠覆现在的App形态,应该做自己的真正的操作系统。把即时通讯和社交核心功能剥离出来,但是把数据和接口开放给操作系统上的应用。即将社交数据和接口变成OS的一个强有力的服务,而不是现在这样在社交平台上做一个OS,使得所有应用的入口都变得更深一层甚至几层。

如果微信(或者腾讯)不做自己的OS, 那我也就只能不负责任的断言: 它的小应用最多也就是像Facebook上的那些应用一样, 成为社交相关或者社交领域中的一个子集, 根本不可能完全替代App。

其实还有个最简单的类比, 脸书Facebook的用户比微信多,安装量也更普及,也提供App开发接口,可是并没有谁说Facebook上面的应用就能替代其他App。

点击右上角,关注本头条号,与你分享最新科技生活故事。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“applet如何运行,applet怎么运行,applet运行在哪里,applet的编写和运行”边界阅读