一、是什么
2017年,微信正式推出了小程序,允许外部开发者在微信内部运行自己的代码,开展业务
截至目前,小程序已经成为国内前端的一个重要业务,跟 Web
和手机 App
有着同等的重要性
小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用
也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题。应用将无处不在,随时可用,但又无需安装卸载
注意的是,除了微信小程序,还有百度小程序、微信小程序、支付宝小程序、抖音小程序,都是每个平台自己开发的,都是有针对性平台的应用程序
二、背景
⼩程序并⾮凭空冒出来的⼀个概念,当微信中的 WebView
逐渐成为移动 Web
的⼀个重要⼊⼝时,微信就有相关的 JS-SDK
JS-SDK
解决了移动⽹⻚能⼒不⾜的问题,通过暴露微信的接⼝使得 Web
开发者能够拥有更多的能⼒,然⽽在更多的能⼒之外,JS-SDK
的模式并没有解决使⽤移动⽹⻚遇到的体验不良的问题
因此需要设计⼀个⽐较好的系统,使得所有开发者在微信中都能获得⽐较好的体验:
快速的加载
更强⼤的能⼒
原⽣的体验
易⽤且安全的微信数据开放
⾼效简单的开发
这些是JS-SDK
做不到的,需要设计一个全新的小程序系统
对于小程序的开发,提供一个简单、高效的应用开发框架和丰富的组件及API
,帮助开发者开发出具有原生体验的服务
其中相比H5
,小程序与其的区别有如下:
运⾏环境:⼩程序基于浏览器内核重构的内置解析器
系统权限:⼩程序能获得更多的系统权限,如⽹络通信状态、数据缓存能⼒等
渲染机制:⼩程序的逻辑层和渲染层是分开的
小程序可以视为只能用微信打开和浏览的H5
,小程序和网页的技术模型是一样的,用到的 JavaScript
语言和 CSS
样式也是一样的,只是网页的 HTML
标签被稍微修改成了 WXML
标签
因此可以说,小程序页面本质上就是网页
其中关于微信小程序的实现原理,我们在后面的文章讲到
三、优缺点
优点:
随搜随用,用完即走:使得小程序可以代替许多APP,或是做APP的整体嫁接,或是作为阉割版功能的承载体
流量大,易接受:小程序借助自身平台更加容易引入更多的流量
安全
开发门槛低
降低兼容性限制
缺点:
用户留存:及相关数据显示,小程序的平均次日留存在13%左右,但是双周留存骤降到仅有1%
体积限制:微信小程序只有2M的大小,这样导致无法开发大型一些的小程序
受控微信:比起APP,尤其是安卓版的高自由度,小程序要面对很多来自微信的限制,从功能接口,甚至到类别内容,都要接受微信的管控
参考文献
https://developers.weixin.qq.com/miniprogram/dev/framework/
https://www.zhihu.com/question/263816362
--The End--
系列正在更新:1/8
点击下方卡片解锁更多
创作不易,星标、点赞、在看 三连支持