H5和小程序并不具备什么可比性。只是很多移动端的场景下,这两种选择都能实现产品的大部分功能,加之其各领风骚好几年,就更难抉择了。
我们经常说的 H5 是一种不标准的叫法,可以理解为只是一种技术,大家说得最多的 H5 主要是指用在移动端的网页,其实 PC 电脑版也一样可以使用 H5 技术。而小程序,这里特指微信小程序,是在微信 APP 基础上支持的一种应用形式,完全依赖于微信 APP 环境。
H5 既然是网页,那么依赖的外壳主要是浏览器,因此只要有浏览器,就可以使用。比如手机内置的浏览器,APP 的 web-view 组件,以及小程序提供的 web-view 组件,都可以打开 H5 页面。
但是呢小程序只能依赖微信客户端,也就是说只能在微信里打开。那么,如果你的产品需要通过短信通知用户带上访问地址,就无法用小程序实现了。而 H5 页面,则可以在短信正文中直接用手机内置浏览器打开。
一些能力是微信本身的策略限制的,比如 H5 在微信里可以直接分享朋友圈,而小程序目前就只能转发好友或群。对于朋友圈,就只能生成带小程序码的图片发到朋友圈。
而对于分享到好友或群,小程序又提供了卡片式的分享界面,看起来很高端,信息也多,并且能追踪用户行为。这一点,H5 又无法做到。
除了形式上的体验差异,性能上也是有差异的。小程序基于微信客户端实现,对解析进行了优化,并且一旦首次打开小程序,可以直接缓存很多资源。因此,在使用小程序时可以明显感觉很流畅,接近原生 APP 的体验。
而 H5 本质上还是网页,跟之前在 PC 上浏览网页没区别,每次要请求各种图片样式资源,在浏览器内核里渲染,因此体验会差一些。
赠送福利给提问者还有需要的小伙伴们,三分钟轻松实现H5活动制作,免费领取10000个精美模板戳zh
小程序与H5还是有很大区别的,那我们就从开发和用户体验两个角度去看看两者之间的差异都有哪些。
微信小程序运行环境是非完整的浏览器,是基于浏览器内核完全重构的一个内置解析器,针对小程序专门做了优化,配合自己定义的开发语言标准,大幅提升了小程序的流畅度和性能。
当我们开发一个HTML5 的web需求时,我们需要从开发工具,(vscode、Atom等),到前端框架(Angular、react等)、模块管理工具(Webpack 、Browserify 等)、任务管理工具(Grunt、Gulp等),还有UI库选择、接口调用工具(ajax、Fetch Api等)、浏览器兼容性等等,都需要考虑周到。
微信提供了统一的开发工具,并且规范了开发标准,所以,作为一个开发者,你只需要专注写代码就好了。
而且,你可以随意调用微信开发里的API,不用担心浏览器的兼容性,不用担心莫名其妙的bug……
微信能获取到更多的系统权限,如网络通信状态、数据缓存能力等,这些系统级权限都能与微信小程序无缝衔接,这也就是官方宣称的拥有Native App的流畅性能。
而HTML5 web应用则相对少了很多,这一点恰巧是HTML5 web应用经常被诟病的地方。
我们在打开一个HTML5页面的时候,实际上就是打开一个web网页,而网页在浏览的时候,需要在浏览器中进行渲染,这个过程叫做加载,无论加载的时间的长短,都会给用户一种「卡」或者「不灵敏」的感觉。
小程序是微信内的云端应用,通过WebSocket 双向通信(保证无需刷新即时通信)、本地缓存(图片与UI 本地缓存降低与服务器交互延时)以及微信底层技术优化实现了小程序接近原生APP的体验。
【涵予科技,以设计驱动企业价值的增长,用服务实现您的商业目标】想了解更多APP开发资讯,欢迎关注我们!任何产品或服务问题,欢迎私信。
现在小程序和公众号一样,需要微信的推广,需要微信能够开放,让更多的公众号、小程序走向前台去找用户,而不是在后台等着用户去找他们。小程序需要更强的开放性。
所以我认为未来的主流趋势应该是微信、QQ、微博、支付宝、淘宝、手游这样的功能强大且高频次使用的APP会保留在手机上,诸如外卖、团购、出行等软件会被移植到微信或支付宝这样的平台上。实现手机端的B/S整合。
小程序是独立于公号的一种新应用形态,本质上是一种工具。而工具本身的强属性:提高效率,用完即走。因此小程序的设计以轻便、快捷为原则,鼓励用户“即用即走”。因为微信小程序的开发使用了改自js、CSS、HTML的语言,同时提供了各种自有的组件和API,是一套为微信量身打造的自定义的语法。因此,在微信中小程序的使用体验比普通H5更加顺畅、快捷。
通过小程序的分享转发,每一次谁转发了,到了哪里,谁点开看了这些信息我们都是可以知道的,通过此可以知道用户和身边朋友对品牌的喜好。这个信息是过去APP电商、PC互联网电商做不到的,基于社群化的分享和交流可以知道社群消费力是怎么样的情况,喜欢什么样的品牌,什么样的方式更合适。通过这样的信息收集背后有算法可以比较精确地推荐计算,这些东西的确是在APP上、H5上做不到的。
H5本质上是网页,在浏览器内打开,小程序的运行环境是微信开发团队基于浏览器内核完全重构的一个内置解析器,需要符合平台规范,也不需要经过浏览器渲染,直接在平台内运行,小程序在使用体验上更偏向于APP,但不需要做很强的适配,小程序不能跳转外部链接,H5没有限制。
H5给我感觉多为营销宣传,而小程序则更多为实际功能。开发成本上,H5其实要低许多,而且有了像动动三维等平台的存在,H5的成本是很低的。
很明显,小程序有自己的流量,只是现在运用的最多的还是存在于微信上,依托的是微信的平台,在微信里面在打开自己的东西,各种h5做的APP呢,直接就是一个单独的程序,不依托平台,但是也有自己的推广,也有自己的用户,所以我觉得其实,没什么大的区别,只是运用的场合不一样而已,大程序,小程序,所用到的技术是一样的,针对的用户方向不一样而已。
如果单论体验效果,应该是难分伯仲。小程序开放的功能肯定和HTML5无法相比,但是小程序的强大在于它的统一,任何小程序都必须遵守它的那些规范和限制,所以用户使用起来,不会有突兀的不协调感觉,这和iOS的套路相近,严格的规范,造就了统一的风格和用户期待。
同时如其他回答里说的,小程序离用户流量更近,这是个无法回避的事实,而且它不用下载,不用安装,却可以使用App的功能,许多时候,这确实是个很不错的选择。只不过目前微信并没有很大力的去推广,所以略显低调。
第三:从推广角度来说,小程序目前只能在微信群内进行传播,H5能在微信群以及朋友圈进行传播,但是H5在传播过程中很容易被封,小程序目前则不会。我觉得还是有一定差距的,主要是看你想干嘛吧。
播放方面:内嵌网页版的学习产品播放与电脑网页版无差别,优达引导学员去PC端学习;极客时间、得到、网易云课堂的小程序有课程、可试听,但引导去App学习,商品可以购买,课程只是展示(网易云课堂只展示我的学习,无课程展示,不进行售卖,只能听已购买课程);优达、gitchat小程序可以搜索到,但均无课程。
功能方面:内嵌网页版的功能都相对完善,可试听、可购买、不可做笔记;极客时间的小程序功能不够完善,无法观看视频课程,图文课程观看无影响,但iOS版小程序无法订阅、Android版可订阅;优达可跳转到优达商城小程序,但依然无内容;网易云课堂只有已购课程跟个人信息等简单功能。
学习体验方面:iOS版内嵌网页版与PC网页展示无巨大差别,互动会少一些、无倍速播放、答题判卷速度较慢,影响体验;Android版稳定性较差、会出现适配问题;小程序端提示去App或PC网页学习。
结算方面:极客时间网页版支付方式仅微信,选择其他方式支付是摆设,其他均只有微信支付;iOS版小程序均未设置交易功能;Android版小程序可正常交易。
结论:目前,各学习平台的小程序以引流、布局为主,不作为主要学习平台,且会引导学员去APP或电脑端学习,甚至不售卖课程,具体原因善待调研;内嵌网页版(H5)整体可满足用户基本选择、购买、学习需求;建议前期以H5开发为主,从推广角度看,也更利于分享。
长期以来,移动互联网界一直在寻找一种既能获得Native原生的体验,又可以低门槛快速开发的技术。在这个过程中出现了很多尝试,例如React Native(RN),RN本质上是轻量化Native开发,在Native基础上做减法;H5的特点是开发成本较低,可以做到比较灵活,但缺点在基础信息获取方面(如地理位置、手机信息、播放器等)和顺滑体验方面无法做到Native的效果;
就在这个背景下,微信小程序也给出了自己的方案,它的做法是在H5的标准上做Native能力的加法,赋予了小程序很多Native的能力,微信通过自行研发的小程序运行时,为小程序提供了大量的API层面能力支持,如地图、导航、画布、滚动视图等方面都能提供支持。
小程序的优越性体现在既保留了H5开发的便利和灵活性,又可以达到媲美Native体验,配合微信11亿用户的社交网络,越来越开发者选择微信小程序的技术的。
据小程序团队透露,目前已经50万+的开发者在从事实际的开发,小程序已经成为移动互联网领域“事实”的标准。伴随着这种趋势,阿里、百度分别在2017年的8月和2018年的3月启动了自己的小程序项目,围绕着支付宝和手机百度APP几个超级APP在移动互联网领域再次攻城略地。小程序已然成为近几年最炙手可热“现象级”技术。
目前已经有一家技术公司-凡泰极客,可以把小程序技术私有化的运行到自己的应用中,最重要是免费,可以尝试下,接住这一波小程序红利。

