关于小程序的思考

web development

最近的做的一些项目和各种国内小程序有关,把国内主流的小程序(微信、百度、头条、快应用、支付宝)都体验一遍,自己有一些感想。

小程序降低了开发门槛?

记得在微信小程序刚出来时,标榜的优势之一就是降低开发门槛,一个产品经理即可完成开发。但是作为一个职业前端开发,对这些并不能苟同,有以下一些原因:

  • API 设计不合理。远远达不到 W3C API 设计的能力,而且和 W3C 标准不同;甚至有些API的设计相当原始,已经远远跟不上现代JS语言;对开发者来说带来的是困惑和使用成本;
  • 开发工具不稳定,开发调试并不简单。微信小程序算是比较成熟的,IDE开发调试还算能用,但是其他小程序照本搬抄,草草做个IDE就给开发者用,连基本的可用都达不到,更别提开发体验了。这里最气愤的是快应用,个人觉得快应用的想法是很好的,但是开发体验做的相当差。差到气愤!

小程序降低了研发成本?

小程序出来之前,我们需要开发一个产品的三端,现在我们需要开发四端,甚至七端、八端的。无疑需要更多的人力投入。

小程序提升了体验?

在功能上小程序一般比 H5版本的功能少,更别提和Native 应用比较。在性能上并不觉得比H5好多少,但是在启动速度上感觉比H5更慢。个人觉得综合下来小程序的体验还不如 H5,下面会继续探讨这个问题。

大家为什么还开发小程序?

为了流量,诸如以上提出的那么多问题,但是很多公司、人都还要开发小程序,当然有最现实的原因,为了通过小程序平台来作为流量入口。

我认为的未来?

从一些声音中听到,有人认为小程序是未来,有人甚至想把小程序方案提交到WEB标准中。我觉得小程序不管对于开发者、用户都是没有好处,唯一好处是商业公司通过这种方式短暂获取流量,获取短暂的利益(长期来讲,如果小程序成为了一个公司产品的主要入口,进而变成被国内某家公司控制)。

个人觉得小程序方案,应该随着时间和技术的推进,被埋没在历史的长河中。

PWA,我一直觉得PWA才是未来移动端、PC端应用开发的主流方案,虽然WEB标准也主要由主要几家公司主导,但是相对来说是集体的智慧,是更加理想和良好的设计。觉得PWA技术是未来的原因有以下几点:

  • Web 性能就目前而言,已经不再比Native差,还是说 VSCode 就是个很好的例子。而且随着浏览器优化和性能的提升未来Web性能会更加优秀。目前出现 Weex、Fluter 方案,用Native渲染来提升性能,但是浏览器在未来也可能达到Native渲染的性能、能力,我们就根本不需要这些中间方案。
  • 能力,诸如通知推送、离线等能力 PWA应用已经具备,可以基本达到Native同等能力
  • 标准,PWA是Web标准,只有成为标准的东西,才可能被延续使用。PWA技术只是Web标准的一种延伸,并不会对开发、调试等等带来额外的成本

为什么PWA应用没有普及?

在国外PWA应用已经得到广泛的应用,PWA技术的主要推动者是 Google,但是Google服务无法再国内使用,比如推送能力,国内就无法使用;用户使用习惯养成后难以改变,国内目前用户习惯为APP为主,PWA并没有成为一种习惯,甚至大部分普通用户重来没有用过也不知道PWA是什么,这个需要时间和契机来改变。

尽管这些,我依然觉得PWA是未来,并想为推动PWA的发展做出努力!