|
打开微信搜一搜,小程序输入“点餐”,区别你会看到两种东西:一种点开就能用,小程序退出后聊天记录里还能找到入口;另一种需要先“加载”,区别用完了得在“最近使用的小程序小程序”里翻半天。前者是区别H5,后者是小程序小程序。很多人以为它们差不多,区别都是小程序手机里不用下载的轻应用——但用错场景,开发成本能差出一倍。区别 去年我帮一个做烘焙工作室的小程序朋友选技术方案。她想做个线上预订蛋糕的区别页面,客户选款式、小程序填地址、区别微信支付。小程序我建议她用H5,她反问:“小程序不是更高级吗?”我让她打开美团外卖的分享链接——那个就是H5,在微信里点开直接下单,不用跳转。她又打开瑞幸咖啡的小程序,发现点单前要授权手机号,而且只能在微信里用。区别一下就清楚了。 运行环境:一个借宿,一个安家 H5本质是网页。它跑在浏览器里,微信内置的浏览器也是浏览器。你在微信里打开一个H5,其实是在微信的“浏览器窗口”里加载了远程服务器上的页面。小程序不一样,它的代码包下载到微信本地,由微信自己的渲染引擎跑起来。微信给小程序划了一块独立区域,不是浏览器,也不是原生App。 这导致一个直接后果:H5能跨平台。同一个链接,微信里能开,手机浏览器能开,甚至嵌入到App里也能开。小程序只能待在微信生态里(现在有了支付宝、抖音等平台的小程序,但各平台互不相通)。如果你需要用户从短信、邮件、百度搜索等渠道进来,H5是唯一选择。 性能体验:网页的底子,原生的皮 H5受限于浏览器渲染,页面切换、动画、长列表滚动,总有一种“跟手度不够”的感觉。尤其安卓机上,稍微复杂点的交互就会卡顿。小程序虽然也是前端技术(类似React/Vue的写法),但微信把渲染层和逻辑层拆开,加上本地缓存和预加载,滑动、弹窗、下拉刷新都更接近原生App。我实测过一个商品列表页:H5加载200条数据要1.8秒,小程序只要0.9秒,而且滚动不掉帧。 不过小程序也有短板。它不能像H5那样随意操作DOM,很多CSS属性不支持,canvas绘图能力也弱一些。做复杂图表或游戏,H5反而更自由。 开发成本和入口 H5开发就是普通前端那套:HTML/CSS/JS,加上微信JS-SDK调支付、分享。一个熟练前端三天能出原型。小程序需要学微信的WXML/WXSS,还要走审核流程——企业主体审核1-7天,个人主体连支付都开不了。但小程序的好处是入口多:聊天顶部下拉、发现栏、搜一搜、扫码、公众号关联。H5只能靠链接传播,用户关掉就找不到了。 我那个烘焙朋友最后选了H5。因为她的客户大多从朋友圈海报扫码进来,下单完就走,不需要留存。如果她做会员积分和复购提醒,小程序更合适——能发订阅消息,能放在“我的小程序”里。 说点实在的 别信“小程序取代H5”这种话。微信自己都在公众号文章里挂H5链接。选哪个,看三点:用户从哪来(微信内还是全网)、要不要留存(用完即走还是反复使用)、交互复杂度(简单表单还是流畅动画)。预算紧、要快速上线、跨平台传播——H5。要微信内闭环、体验顺滑、有会员体系——小程序。 还有个坑:H5在微信里分享,自定义标题和缩略图需要公众号后台配置,否则就是默认的网页标题。小程序分享卡片则天然好看。但H5能直接分享到QQ、微博,小程序不行。各有利弊,别偷懒,想清楚再动手。 |