微信小程序
什么是小程序
产品视角:
小程序是一种,它实现了应用“”的梦想,用户扫一扫或者搜一下即可打开应用。
小程序可以称得上在移动互联网领域中国少有的领先于国外的一大发明,它使得诸如微信、支付宝、百度等超级App得以化身为开放平台,具备了接入大规模Web服务或者说应用的能力,也为用户带来了巨大的便利。
技术视角:
小程序(平台)是一个运行在超级App之上的“”。
通过小程序平台可以将微信等超级App的底层能力,比如用户登录、支付、扫码等开放给上层小程序调用。小程序平台也定义了开发者如何编写小程序,包括使用什么样的语言,怎样来描绘界面,如何调用底层能力的API。同事,小程序平台还设计了如何将小程序安全的在App内运转起来,并且如何保证它具备良好的用户体验。
微信小程序在一定程度上来讲是业界事实上的小程序标准。
虽然业界有着十余家小程序平台,但都遵循了几乎相同的系统架构设计和应用开发规范,这主要是因为微信的头部效应,其他小程序平台都希望,开发者开发好的微信小程序可以低成本地迁移到自己的平台。
移动端开发视角:
超级App上不但可以继承外部开发者的小程序,App自身的业务功能开发,也可以通过小程序的方式来实现。
传统的移动端开发,比如使用 Objective C
和 Swift
开发的 iOS
应用或者使用 Java Kotlin
开发的 Android
应用,当有新功能迭代时,需要针对 iOS
、Android
分别开发一套代码,而且需要构建打包,发布到应用商店,用户下载更新安装后才可以享受所开发的新功能。而通过小程序的方式只需要开发一套代码就可以行为高度一致的运行在 iOS
、Android
双平台,我们可以称之为「跨端」。另外不需要用户下载更新App,就可以将App所提供的新功能触达用户,这我们称之为「动态化」。所以小程序也是一项移动端。其他的跨端动态化技术还有 Web
、React Native
等。
小程序主要依赖 Web技术,尤其是 CSS
和 JavaScript
,同时也集成了部分客户端的原生能力,具有很高的灵活性和可发挥空间。