{{item.label}}

微信小程序和网页小程序的区别是什么

134****9631
提问时间:2022-10-12 12:04:33
提示:以下回答均以本问题为中心,仅供参考;如需更多帮助,请咨询早鸽顾问。 去咨询
回答 | 共1个
葛宇晗
葛宇晗
从业10年
个体工商注册公司注册
所在地区:深圳市
咨询解答:68
咨询TA
您好,很高兴回答您的问题首先明确几个概念:Runtime,运行时环境。所谓 runtime 就是能够运行我们写的代码的代码。说来很绕,理解起来很简单——我们写的代码是要运行在一个特定的环境中的,这个环境负责具体执行代码所表示的指令,也就是说代码最终能有什么样的能力、能实现什么样的效果,不取决于怎么写,而取决于 runtime 怎么理解和执行。比如,你用 console.log(Hello World 想在控制台里输出「Hello World」,如果 runtime 就是要把「Hello World」转换成「Vote for Trump」你也没有任何办法。HTML,特指符合 W3C HTML Specification 的标记语言,包括 4.01、5、5.1 等等众多版本。并不是用「 」和「」符号包起来的就都叫 HTML,比如 吃饭/吃饭。CSS,特指符合 W3C Cascading Style Sheets Specification 的样式描述语言,包括 Level 1、2、3、4 等众多版本。网页技术、web 技术——随便怎么叫,特指用 JavaScript、HTML、CSS 几种技术构建应用,最终运行在「浏览器」这个特定 runtime 中的技术。浏览器(中的 JavaScript 引擎)和 Node.js(中的 JavaScript 引擎) 都只是 runtime 的一种——它们决定了我们的 JavaScript 代码能做什么,有什么样的能力供我们使用。window.alert(Hello World) 就只有浏览器能理解,同样 require(fs).readFile(/ 也只有 Node.js 能明白是什么意思。微信小程序是众多实现了 JavaScript(MAYA、3DS MAX、Nginx 以及某些游戏引擎也有) runtime 的环境中的一种。浏览器作为一个 runtime 的另一个重要特点是有 UI 绘制和用户交互行为的捕获能力——(曾经)只有浏览器能识别用 HTML 和 CSS 描述的 UI 结构和样式,并捕获用户的输入传递给 JavaScript 进行相应的处理。小程序也有 UI 绘制和用户交互行为的捕获能力,但严格来讲,它并不能识别 HTML 和 CSS,对应的,它使用 WXML 和 WXSS 两种标准来解释标记语言和样式描述,而标准由微信小程序自己制定。HTML 和 WXML 有交集、CSS 和 WXSS 有交集,但他们是不同的。Runtime 能理解我们写的标记语言、样式描述和业务代码了,接下来需要去执行它们。而问题里提到的当年 Facebook 的客户端,使用的是 Hybrid 解决方案——就是在平台原生应用的外壳里嵌入一个 webview,它能提供基于 HTML、CSS 和 JavaScript 这些技术构建的应用所需的 runtime,因为它其实就是一个阉割的浏览器,不提供前进后退按钮、书签管理等等,只提供运行环境和绘制 UI 的能力。Hybrid 解决方案继承了所有 web 技术的优点——跨平台、易维护、易部署和开发成本低等,同时也继承了所有缺点,而其中最为人诟病的缺点就是——安装包体积大(由于兼容性问题,很多应用不想使用用户设备自带的浏览器环境,而选择打包一个浏览器核心在自己安装包里),以及 UI 绘制效率低。严格来讲,所有最终放弃 Hybrid 解决方案的公司,都不是由于过分相信 HTML 5 和 JavaScript,而是对移动设备上的浏览器的核心部分(webview)的性能,特别是 UI 绘制性能,过分乐观了。时间推移到 2015 年前后,开始出现了以 ReactNative 和 Weex 等技术方案为代表的新型技术解决方案,而小程序单纯从技术实现角度来讲,同这些技术方案差异不大——提供 JavaScript 的 runtime,用某种同 HTML 相似的结构化标签语言来描述 UI 结构,用某种类似 CSS 的语言来描述 UI 样式,然后将这些代码直接绘制为原生 UI。这个过程中已经没有 webview 什么事情了,所以微信小程序并不是我们平时所说的 web 技术,他们只是使用一样或类似的语言而已(总不能说在 MAYA 里写 JavaScript 脚本也叫 web 开发吧?)。客户端开发的核心是通过 runtime 来调度和控制 runtime 之下的平台能力,浏览器这个 runtime 下面的平台是操作系统(Windows、macOS、iOS、Android、*nix 等),而小程序这个 runtime 下面的平台是微信,这是二者的本质区别。再说下载。以前,网页的所有内容必须要先下载再执行,而近些年浏览器提供了离线缓存的相关功能,让网页应用的非数据部分可以离线使用,但这样会把问题复杂度直接拉成指数级提升——以前默认所有东西都要连网才能使用,现在要区分哪些可以连、哪些必须连、
2021-04-28 18:53:22
没有符合您的答案?立即联系 “在线顾问"
顾问推荐
{{item.label}}
{{item.desc}}
相关资讯 换一批
参加专利代理人的资格考试,会有哪好处
专利代理作为知识产权领域体系的一个重要领域,主要从事服务业务,而且范围很广。主要是指专利申请人在申请专利,进行专利许可证贸易或者解决我国专利纠纷处理过程中,委托具有专利代理人资格的专利机构中的工作人员,在委托权限范围内以委托人的名义按照《专利法》的规定向专利局办理专利申请或者其他专利事务所需要进行的民事法律行为。
专利代理
182次浏览
2022-09-05 16:01:15
参加专利代理人的资格考试,会有哪好处
服装商标的独特魅力和文化内涵
在繁忙的街头巷尾,无论是大型购物中心还是街头小店,各式各样的服装品牌琳琅满目,令人目不暇接。这些品牌背后,都有一个共同的元素——服装商标。服装商标不仅是品牌的标识,更是品牌形象的传递者,承载着品牌的独特魅力和文化内涵。
服装商标
568次浏览
2024-04-18 10:52:42
服装商标的独特魅力和文化内涵
商业登记局的查询结果会显示哪些信息
商业登记局查询结果所显示的信息仅供参考,不能作为权威的法律证明。如有需要,建议通过相关法律渠道进行核实和确认。同时,在进行商业登记局查询时,需要遵守相关法律法规的规定,不得侵犯别人的合法权益。
商业登记
700次浏览
2023-11-06 16:00:06
确定注册商标日期的重要性
在商业世界中,注册商标是品牌建设和法律保护的关键步骤。注册商标的计算日期,即商标注册的起始时间点,不仅对于商标的有效期限、续展时机等具有决定性作用,还关乎企业在市场中的权益保护。
注册商标日期
646次浏览
2024-03-06 10:40:22
确定注册商标日期的重要性
小规模纳税人申报表的填写内容有哪些
你知道如何填写小规模纳税人申报表吗?如果不知道,就请你查看下列文章,希望看了这篇文章之后,会对你有所帮助
小规模纳税人申报表
32次浏览
2022-09-23 16:07:27
小规模纳税人申报表的填写内容有哪些
廖银江
廖银江顾问
擅长:版权登记,版权变更
执业7年
咨询专业顾问
最新问答
2023-06-19 06:34:24
北京海丰益商贸中心基本介绍?
北京海丰益商贸中心基本介绍?
2023-06-19 06:33:56
北京佳兴源装饰有限公司第一分公司公司大概情况
北京佳兴源装饰有限公司第一分公司公司大概情况
2023-06-19 06:33:29
北京君燕环保设备有限公司是多久时候成立的?
北京君燕环保设备有限公司是多久时候成立的?
2023-06-19 06:32:19
北京市华盛业石材经营部是多久时候成立的?
北京市华盛业石材经营部是多久时候成立的?
2023-06-19 06:31:54
北京市四季永芳石材经营部基本介绍?
北京市四季永芳石材经营部基本介绍?