微信小程序的特点、开发能力及运行机制

这篇具有很好参考价值的文章主要介绍了微信小程序的特点、开发能力及运行机制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 

小程序的特点及开发能力

小程序的特点

1、相比于传统应用,有以下特点:

  • 与web相比,首先入口不同。
  • 主要都是基于传统的前端技术,以JavaScript语言为主。
  • 与APP相比,学习门槛和开发成本都比较低,可以快速上手。
  • 不需要下载和安装,不想用了也不需要卸载。
  • 相比h5,小程序受限微信运营规范,不像h5页面那么灵活。但他也可以做一些h5做不了的事情,比如消息订阅,直接转发消息给好友等。

小程序的开发能力

1、依托于微信的宿主环境,除了常用的UI组件及网络API之外,在设备能力上,凡微信有的能力,例如振动、监听网络状态、罗盘等,小程序都有。此外,在运营上开放的能力是大家比较关心的,有以下8点值得关注:

  • 小程序和公众号可重名
  • 小程序开放群相关能力
  • 小程序“附近小程序”功能
  • 小程序“星标”功能
  • 小程序可关联500个公众号
  • 可以直接打开网页
  • 小程序的灰度更新和线上版本回退功能
  • 小程序客服能力配置

开发小程序的一般流程

1、微信团队打造了完善的开发生态。不仅有配套的微信开发者工具,还有社区,文档等。企业和个人都可以注册小程序账号,开发、上架自己的小程序产品,接入流程主要包括以下4步:

  • 注册
  • 小程序信息完善
  • 开发小程序
  • 提交审核和发布

小程序的运行机制

启动机制

1、小程序启动会有两种情况:

  • 冷启动
  • 热启动

双线程架构

1、为了安全和管控,小程序使用双线程执行:视图线程和逻辑线程。

  • view 视图线程
  • APP service 逻辑线程

2、逻辑线程的四个状态

  • 初始化状态,启动服务线程所需的基本功能,系统的初始化工作完毕就调用自定义的onLoad和onShow,然后等待界面线程的初始化完成信息,onLoad只是首次渲染的时候执行一次,onShow是每次界面切换的时候都会执行。
  • 等待激活状态,接收到视图线程初始化完成信号后,将初始化数据发送给视图线程,等待界面线程完成初次渲染。
  • 激活状态,收到界面线程发送来的首次渲染完成信号后,就进入激活状态,即程序的正常运行状态,并调用自定义的onReady函数,在这个状态下可以通过setData函数,发送更新数据给视图线程以更新页面。
  • 后台运行状态,如果界面进入后台,服务线程就进入后台运行状态,在这种状态下也可以通过setData函数更新视图数据,但这种更新其实是我们应该避免的。

总结

小程序采用的是双线程结构,一个线程负责视图的渲染,一个线程负责业务逻辑的处理,两个线程都通过WeixinJSBridag与微信Native底层进行通讯,包括两者之间进行的事件与数据的交换,也是通过它完成的。所有平台能力、硬件能力也是通过WeixinJSBridge间接提供的。

由于setData在频繁更新和大数据更新上有瓶颈,影响渲染效率,所以微信引入了WXS编程语言,一般在开发时我们这样处理,从后端接口接收回来的初始化数据,在页面onLoad之前,就塞在Data数据之中,用于视图的初始化渲染,后续的视图交互与更新,如果不与后台有关,我们就是用WXS编程语言,直接在视图里进行完成,这样可以提高渲染效率。文章来源地址https://www.toymoban.com/news/detail-503214.html

到了这里,关于微信小程序的特点、开发能力及运行机制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序运行原理揭秘:高效的更新机制

    微信小程序运行机制 官方文档描述的很详细,所以这里只介绍主要的相关概念。 小程序启动后,界面被展示给用户,此时小程序处于 前台 状态。 当用户点击右上角按钮关闭小程序,或者按了设备 Home 键离开微信时,小程序并没有完全终止运行,而是进入了 后台 状态,小程

    2024年02月05日
    浏览(39)
  • HBuilder X运行微信小程序项目至微信开发者工具失败

    在HBuilder X中运行微信小程序项目时,此步于以下过程,无法进一步打开界面   解决方案: 导入项目即可,但是需要注意导入项目的路径信息。 需要是当前项目unpackage==dist==dev==mp-weixin下面的文件,微信开发者工具才能识别。    

    2024年02月11日
    浏览(71)
  • HbuilderX运行uniapp项目到微信小程序时,自动打开了微信小程序开发工具但是进不去项目

    这样选择之后,运行时一直停在打开微信开发者工具不能进入项目,如图: 这是因为你当前不是这个微信小程序的开发者,联系管理员添加你为当前小程序的开发者就行了。 或者是更换appid

    2024年02月11日
    浏览(66)
  • 微信小程序开发者工具运行 uni-app 项目时报错 Uncaught (in promise) undefined

    开发者工具控制台报错 Uncaught (in promise) undefined,如图: 该错误主要是因为调试基础库过高或过低导致的。 在 微信开发者工具 — 详情 — 本地设置 — 调试基础库 中,将调试基础库版本调低或调高即可 调试基础库:此处选择的基础库为微信中的基础库版本,且仅用于开发者

    2024年02月12日
    浏览(72)
  • 微信小程序3D,使用Three.js在微信小程序中展示gltf模型,使用VisionKit展示AR能力

    本仓库只开源gltf模型展示技术,技术好的朋友有这些代码就能帮助你解决很多问题了 如需要完整项目(基于若依框架开发的后端,AR能力前端)需另外付费赞助, 联系方式:QQ 790002517 微信公众号:时不待我 https://github.com/zzy-life/Wechat3D Three.js Three.js is a JavaScript 3D library. thr

    2024年02月09日
    浏览(47)
  • 微信小程序通知,微信小程序长期订阅消息添加硬件设备能力的设备订阅消息step-by-step

    本文目的,分享一个实际案例: 开发微信小程序的报警器的微信订阅消息, 设备报警后触发微信报警 前提: 有一个微信小程序并且微信认证过。 1: 添加设备申请权限 2:按照实际情况填写设备信息, 一般等两天到三天能审核过  3: 申请设备消息能力 , 这个一部不做的

    2024年04月16日
    浏览(53)
  • uniapp微信小程序获取用户头像和昵称填写能力调整解决方案

    微信小程序填充头像button按钮开放了open-type=\\\" chooseAvatar\\\"  微信小程序填充昵称input按钮开放了type=\\\"nickname\\\"  小程序 wx.getUserProfile 接口将被收回,「头像昵称填写能力」支持获取用户头像昵称 : 文章目录 一、调整背景 二、解决方案 在小程序内,开发者可以通过 wx.login 接口

    2024年02月11日
    浏览(64)
  • uniapp使用微信开发工具打开微信小程序运行[ app.json 文件内容错误] app.json: 在项目根目录未找到 app.json

    这是 uniapp 项目 还未转成微信小程序 需要转换一下     重点:   首先一定要有 unpackage文件夹   如果没有的需要到HBuilder X 编译一下 编译完,可以看到如下目录既可以了

    2024年02月07日
    浏览(53)
  • 2023年最新微信小程序获取用户openid、头像昵称的填写能力和方法原生写法

    大家好,下面是我身为小白分享给小白哈, 不懂就问相互学习共同进步! 亲测自用原生代码,感谢大神指点赐教鼓励勿喷; 只需9个一键复制粘贴步骤一气呵成; 先来 本文最终主要实现效果 : 获取微信小程序用户头像昵称的填写能力和方法原生写法 一:先捋一捋思路逻辑

    2024年02月08日
    浏览(84)
  • 微信小程序克隆到运行

    小程序开发工具下载:官网登陆后下载开发软件 https://mp.weixin.qq.com/ https://mp.weixin.qq.com/cgi-bin/wx 1.git克隆 2.安装依赖 npm i 如果遇到卡在node lib/install.js 一直不进行 重新运行安装:(https://www.python100.com/html/3716RLP8FZM2.html) 理解npm install --ignore-scripts 3.安装完运行 如果报错: 可以尝

    2024年02月11日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包