小程序是一种不需要下载安装即可使用的应用,经过四年发展,11大平台推出各自小程序生态,小程序成为真正意义上的中国人定义的“互联网新技术标准”。
小程序发展到今日,已经演变出了一种新趋势:很多公司越来越重视小程序发展,体现为把各个业务模块通过小程序的方式去承载,再让自己的 App 去运行这些小程序。
下面是一些我从技术和公司的角度去做的一些思考和分析。
传统开发模式的技术缺陷
当前90%以上的 App 采用的方案是原生或 HTML5 混合模式。
原生开发,是在Android、IOS等移动平台上利用官方提供的开发语言、开发类库、开发工具进行App开发。比如Android是利用Java、Eclipse、Android Studio;IOS是利用Objective-C和Xcode进行开发。
HTML5应用开发,是利用Web技术进行的App开发。Web技术本身需要浏览器的支持才能进行展示和用户交互,因此主要用到的技术是HTML5、Java、CSS等。
但这两种模式下的 App 确实有明显的弊端:
一是原生 App 非常“重”,且发版周期长、不容易传播分享,在 iOS、Android 不同平台上需要重复建设,在Android和IOS都要各自开发,同样的逻辑、界面要写两套。
二是以 HTML5 为代表的混合开发方案由于Web技术本身的限制,H5移动应用不能直接访问设备硬件和离线存储,所以在体验和性能上有很大的局限性
小程序的技术优势
小程序是一种不需要下载安装即可使用的应用,用户扫一扫即可打开应用,用完即走,无需安装卸载,方便快捷。
很显而易见的一点是:小程序第一点就在于它足够“轻”,体积轻量、无需下载、无需安装,能够灵活承载各个业务模块等的全端投放和调配管理。
小程序运营时其组件及UI都有明确的规范,开发者不用考虑兼容性及类似H5开发时复杂工具及框架的选择。同时,由于组件及UI都是预设的,展示体验也会更佳。
同时,小程序可以独立进行开发,在管理后台以上下架的形式直接发布,支持在不更新 App 的情况下实现热更新,能够解决企业 App 发版频率过高等问题,快速响应业务需求。
W3C的Mini-App工作组正在形成标准化的建议稿(欧盟开源组织OW2所支持的快应用实现,也将遵循这个标准)。这意味着小程序正在成为真正意义上的“互联网新技术标准”。
它不再是某个互联网公司的“专利”,“小程序”这个名字也不代表是哪一家的技术。它是一种轻应用形态,一种数字内容的表现方式,或者我们称之为“小程序化的数字内容”。
业务小程序化后有什么管理优势
业务小程序化后的还有个优势是——便于做数字内容的管理。这个如何去理解呢?
小程序容器技术,能够让小程序运行在各终端中,解决跨端开发的根本问题。一端开发,多端上架。极大程度上节省了多个技术团队之间跨知识结构协同的问题,同时也节省了APP与服务器端调试的时间成本。
此外,还可以灵活管理投放了自身小程序的合作渠道。
通过小程序管理后台,一是管理自身的自营 App 渠道,二是管理自己投放小程序的合作渠道,不管用户是使用哪种渠道,手机 App、Windows 也好,Mac 电脑、国产信创操作系统也罢,都可以通过小程序上下架做到灵活管控。
这样一来各个小程序开发者/开发商不再受到各个平台规则的约束,可以按照自有的策略和计划上线运行小程序,强化了自己的管控权。
如何获得小程序运行的技术
首先肯定排除重复造轮子,成本太高了,耗费大量的时间成本和人力成本不说,整个小程序的使用体验度可能还没有 HTML5 好。
市面上目前来看是有一些比较成熟的技术方案,例如 FinClip、mPaas等。
mPaas 是阿里旗下的产品,主要是将支付宝的小程序技术对外进行输出,个人认为好处和不好的都很明显,产品成熟度高,但是还是在阿里自己的生态中玩,对于外部微信等生态的兼容度不够。
Finclip 是专门去做小程序容器的厂商,他们打得点主要是:集成 FinClip 小程序 SDK 后,不论是 iPhone、Android、Flutter、React Native、电脑或物联网设备, 能够让不同的应用或终端设备快速具备运行小程序的能力。个人试用了一下,整体的体验度和 mPaas 相差不大,但是能够兼容微信小程序语法,对于大部分的开发者和企业有更大的吸引力。
宣传的一个使用场景也是助力更多企业打造更高效的一站式数字内容管理平台,降低内容与渠道所形成的内容矩阵管理成本,旨在让同一小程序化数字内容在多社交平台、多终端转编译和上架。
基于文本格式的、采用标签语言和动态脚本语言、指令式的小程序化轻应用技术,只要在各种设备上有运行沙箱(通常以浏览器内核为基础),即可被运行、转发、分享、传播。
它或者它的未来技术变种,也许是未来移动时代里最开放、最轻量的“数字内容”格式,企业是时候去利用这样的技术。