百度一下我们可以知道HTML英文全称为Hyper Text Markup Language,即超文本标记语言。而HTML5是超文本标记语言的第五次修订版本。简单来说,小程序是一种应用,运行的环境是微信(App);H5是一种技术,依附的外壳是是浏览器。
小程序的开发过程中会用到HTML5相关的技术(并非全部),小程序最后的发布上线需要微信审核,微信在不更新自身软件的情况下可以将小程序更新到自身软件内,这就联想到了React Native框架,并且已经有开发者在微信小程序的开发工具源码中发现使用了React和NodeWebkit库。
H5 的开发,涉及很多工具,这些工具可定制化非常高,大部分开发者也有自己的配置模板,但对于项目中各种外部库的版本迭代、版本升级,这些成本加在一起那就是个不小数目了。而开发一个微信小程序,由于微信团队提供了开发者工具,并且规范了开发标准,则简单得多。前端常见的HTML、CSS变成了微信自定义的WXML、WXSS,WXML,官方文档中都有明确的使用介绍,开发者按照说明专注写程序就可以了。
小程序缓存到了本地,在二次打开的时候无需要再加载,但果真如此吗?如果小程序开发者把很多图片、文字等页面元素都做成动态加载且不做缓存,那么你每次打开小程序相当于…重新下载了一遍 app,跟原来的 H5是一样的。但是原来 H5的页面切换不流畅总是要加载,小程序不会啊,你怎么能说小程序和 H5一样呢?
现在小程序和公众号一样,需要微信的推广,需要微信能够开放,让更多的公众号、小程序走向前台去找用户,而不是在后台等着用户去找他们。小程序需要更强的开放性。
小程序的运行环境是微信开发团队基于浏览器内核完全重构的一个内置解析器,针对性做了优化,配合自己定义的开发语言标准,提升了小程序的性能。官方文档表明脚本内无法使用浏览器中常用的window对象和document对象(基于这一点,像zepto/jquery这种操作dom的库就被完全抛弃了)。不过微信给开发者提供了开发工具,内置了编程、调试、开发环境以及发布,开发者只需按照官方文档进行开发,就能保证小程序在微信内稳定运行。
务
网友评论