首选从产品的角度来讲
公众号内嵌H5开发的时候,微信底部会提供相应菜单作为功能的引导入口,最终的页面还是会把用户引导到H5页面,而在用户体验方便跟原生APP开发还是有相当大的差距。而微信小程序它提供了丰富的框架组件和API接口供开发者调用,具体包含:界面、视图、内容、按钮、导航、多媒体、位置、数据、网络、重力感应等。在这些组件和接口的帮助下,运行在微信上的小程序基本保持和Native APP一样的流畅度,极大的提高了用户的体验。
然后从开发的角度来讲
不论是APP、H5,它们的Server端都一样,所以这里不讨论。
之前的开发就是我们讲的传统的前端:html、js、css,加上微信用js提供的一些原生能力,最终的展现形式也是用手机内置浏览器(WebView)打开我们的页面,但是归根结底都是H5,这种方式我们应该熟悉的不能再熟悉了。小程序我们可以简单粗暴的理解为RN(React Native),用大白话来讲就是用H5写的程序,最后以Native App的方式来运行,他们的原理都是用JS调用底层Native组件。