# 小程序基础

本文主要是记录一些小程序的背景知识,可以作为小程序开发的入门普及。

如果找不到请直接到官方文档 - 微信官方文档 - 小程序 (opens new window)

另附官方文档 - taro (opens new window)

# 小程序 与 H5 比较

总得来说,小程序 无论从用户体验还是市场认可上都要优于 H5。

优势主要体现在如下几个方面:

# 优势:开发体验方面

  1. 运行环境:小程序特殊的运行环境使得其流畅度和性能更优化。 H5 的运行环境是浏览器,小程序的运行环境是基于浏览器内核完全重构的一个内置解析器,针对小程序做了专门优化,因此运行流畅度和性能更好。本质上来说,H5 是浏览器页面,而小程序是计算机页面

  2. 开发成本:小程序的开发成本更低。 传统 Web 和 H5 开发时,需要用到各种不同的开发工具,还要考虑浏览器兼容性。但开发小程序时则可以使用微信提供的统一的开发工具和开发标准,可以随意调用微信开发提供的 API,无需担心浏览器兼容性,因此其开发成本更低。

  3. 系统权限:小程序系统权限更丰富。 小程序借力微信,可以连接更多系统权限,如网络通信状态、数据缓存能力等,而 H5 web 应用则较少,业务逻辑简单、功能单一。

# 优势:用户体验方面(市场更认可)

  1. 加载速度:小程序的加载速度更快,接近 APP H5 打开时实际是打开 web 网页,而网页需要在浏览器中渲染,这些加载时间会给用户造成卡的感觉。而小程序作为微信内的云端应用,使用通过 WebSocket 双向通信(保证无需刷新即时通信)、本地缓存(图片与 UI 本地缓存降低与服务器交互延时)以及微信底层技术优化实现了小程序接近原生 APP 的体验,因此加载速度更快,操作起来更流畅。

  2. 二次打开:小程序多次打开更便捷,更易触达,且切到后台页面会 keep alive

# 劣势

  1. 小程序有 size 限制;
  2. 小程序的技术框架给开发带来诸多限制;
  3. 小程序需要上架审核,相比 H5 灵活性、及时性较差;

# 小程序基础知识(可直接浏览这篇博文)

小程序踩坑之旅 (opens new window)

本文分标题记录的很全,大部分内容都可以找到。。

# 小程序基础知识(补充)

# 什么是原生组件?native-component

原生组件:小程序中的部分组件是由客户端创建的原生组件,这些组件有:

  • camera
  • canvas
  • input(仅在 focus 时表现为原生组件)
    • 所以focus时会有input内的文本字体变化、高度大小变化带来的闪烁
  • live-player
  • live-pusher
  • map
  • textarea
  • video
Last Updated: 3/15/2021, 5:33:24 PM