小程序技术全解| 青训营笔记

134 阅读4分钟

这是我参与「第四届青训营 」笔记创作活动的的第17天

01.发展历程

发展历程

image.png 17、18年是小程序的发展初期,这个阶段最早由微信开始进行探索。17.1小程序正式发布,这个时候小程序就有了很高的关注度,但这个时候还没有完全对个人开发者开发,到3月份,小程序正式面向个人开发者开放,自此,小程序数量进入爆发期。

4月份最重要的带来了称为小程序码的新型图形码,为什么说小程序码很重要。因为它的到来真正能够让线下场景和线上小程序沟通串联起来。

9月份支付宝小程序也开始了公测,标志着各大厂竟相进入到小程序领域开始竞争,因为围绕着小程序各大超级app能够构筑和丰富独属于自己的生态。

12月份轻度游戏,小游戏上线,跳一跳风靡一时,

进入18年,小程序在1月份带来了打开app的能力,这也标志着小程序为其他引流功能的功能开放 image.png 同时在18年,百度小程序,qq小程序、头条小程序(现在叫字节小程序),都相继上线。“巨头”都加速布局小程序生态 19年,小程序被纳入腾讯最高战略,同时微信为小程序带来更加丰富的入口,开放更多的流量,如,微信主页下拉出现小程序桌面,微信搜索也可以搜索到小程序,同时微信公众号也可以自由挂载小程序,这些入口意味着更多的场景渗透。

9月份,小程序开放贴片广告,正式开始商业化建设,其实对所有企业来说所以业务最终都是为了赚钱嘛。随着小程序越来越复杂,小程序包4M的限制越来越无法满足,所以在11月份小程序开发包的总包上线上升至12M,让开发者能够构建更加复杂的小程序应用。

image.png

进入2020年疫情的出现也加速了各种小程序的出现,同时微信为小程序赋予了直播和小商店更多的属性,为小程序的商业化带来更多的可行性。后面的就不说了,总之就是越来越多的场景,小程序整体也逐渐发展的越来越成熟

核心技术

image.png

这是到20年底的数据,可以看出小程序的数量特别的庞大,虽然出现的不是特别久。到现在只会更多

小程序生态

image.png

小程序是超级app发展到一个阶段的必然产物,因为这些超级App想要构筑更多的场景,让更多的人用只靠自己做是永远做不完的,所以需要开放出来给其他开发者做。所以小程序目前的生态也基本是围绕各个超级app来的。

02.业务价值

与 WEB 的区别

  1. 有着固定的语法以及统一的版本管理,平台可以更方便的进行审核
  2. 平台能够控制各个入口,比如二维码,文章内嵌,端内分享。入口上也能带来更好的用户体验
  3. 小程序基于特殊的架构,在流畅度比 WEB 更好,有更优秀的跳转体验

三大价值

1.渠道价值: 由于小程序的便捷性,依托于超级平台,小程序能够充分为很多场景导流,如美团和美团优选微信小程序带来的流量占比分别是 40% 和 80%

2.业务探索价值: 相比原生APP来说,小程序的开发难度和成本都降低的很多,这就创造了很多场景开发者能够 小程序来快速试错,不断探索新的业务价值

3.数字升级价值: 线下到线上如何做?从轻消费类的快餐、茶饮到地产汽车等大宗消费,小程序都展示了良好的容错空间。我们线下场景的小程序覆盖范围很广

03.技术解析

第三方开发应用最简单最方便的方式 WebView + JSBridge

小程序原理

  • 开发门槛低

    • HTML + JS + CSS
  • 接近原生的使用体验

    • 资源加载 + 渲染 + 页面切换
  • 能够保证安全可控

    • 独立 JS 沙箱

不操作 DOM 如何控制页面渲染?
Data => 根据数据处理DOM => 页面

小程序语法

image.png

image.png

实现番茄时钟

image.png

image.png

image.png

image.png

04.相关扩展

前端框架介绍

跨端框架:

  • 复杂应用构建
  • 一次开发可以跨多端

image.png

跨端框架原理

  • 编译时 ast:

image.png

image.png

image.png

image.png

缺陷: 无法完全磨皮差异

  • 运行时
    • 虚拟 DOM
    • Template 组件

image.png

image.png

缺陷: 在一些场景下相比小程序原生语法性能会更差