微信小程序与原生的App(iOS、Android)的优势对比

        小程序也属于App的一种,那么它和我们现在流行的原生App(IOS、Android)相比,有什么区别和优势呢?

一、区别与优势

        首先,从技术上来讲,目前App的主流开发方式有三种:Web App 、Native App 和 Hybrid App。比如:

  • Web App 

        在微信”发现“里面有一个”购物“入口,点进去打开的是京东的移动购物页面,这个页面实际上就是一个Web App。支付宝的众多小服务也是Web App,这类App其实就是我们经常在PC上浏览的网页,只不过加入了响应式的设计让它适合在移动端显示和运行,所采用的技术依然是 JavaScript、CSS 和 HTML。相对于其他两种APP,Web App 具有开发简单、高效,更新灵活、跨平台、大量的网页应用稍作调整即可放在移动端运行。但缺点与优点并存,Web App 性能、体验极差,无法使用照相机、系统通知、本地缓存等原生特性

  • Native App 

        Native App 也称原生 App 。这种 App 不是采用 JavaScript、CSS 及 HTML 开发,而是使用 Objective-C (IOS) 或者 Java (Android) 开发。微信、支付宝 等都属于这类 App,是目前主流的开发方式。Native App 具有性能、体验非常良好,组件支持完善、接口丰富等特点。但Native App 最大的缺点在于,不能跨平台,有多少个平台就要开发多少版本,现在主要有 IOS 和 Android 两个主流平台,还好 Windows Phone 已没了踪影。

  • Hybrid App

        Hybrid App 也称为混合式 App 。Hybrid App 看上去像一个 Native App,但实质上 Native 技术在这里只是作为一个容器,将 Web App 包裹了起来,在容器内部实质运行的还是网页。Hybrid App 更像是 Web App 与 Native App 的混合体。与纯粹的 Web App 相比,Hybrid App 会有一部分访问原生组件(相机、加速器)的能力。事实上,目前主流的应用中,纯粹的原生的 App 很少,绝大多数都属于混合式 App 。比如,常见的京东、淘宝等电商类 App ,由于商品及业务变化非常频繁,需要经常调整,所以这类 App 的主要页面都是采用 Web 技术来构建,只是用 Native 包装了一下。Hybrid App 具有接近于 Native App 的体验、开发效率高、跨平台等特性。

        那我们如何界定,哪些 App 属于“原生”,哪些 App 属于“混合”呢?这个要看 Web 页面在 App 中所占的比例,如果绝大多数页面都采用 Web 技术构建,那么我们称为混合式 App ;而如果只有少数页面采用 Web 技术,我们称为原生应用。

        那么小程序属于以上三种的那一种?严格意义上来说,它不属于以上三种中的任何一种,在实现的技术上小程序同传统的 Hybrid 还是有很大的不同的。小程序采用 JavaScript 和 CSS 这类常见的 Web 技术开发,但它又不使用 HTML ,它同 Web 没有直接的联系。小程序实际上是将一系列自己定义的组件编译成了对应平台(IOS、Android、PC)的相应可运行组件,以提高运行性能。如果一定要将小程序归并到以上三类 App 中,可能 Hybrid App 更合适:非原生,但使用到了 Web 技术(JavaScript 和 CSS)。

        相比于 Native App,小程序具有 Hybrid App 的一些优势:

  • 跨平台(对于 iOS 和 Android 两个平台只需要开发一套程序)
  • 具备接近于 Native App 的体验
  • 对原生组件有访问能力
  • 具备缓存能力
  • 上手容易,开发逻辑较为简单

        同时,小程序还具有一些它独有的特点:

  • 小程序在设计时就做了很多约定式的规
  • 开发环境很干净,无需安装任何除开发工具外的其他的软件
  • 发布和部署流程非常简单,几乎是“傻瓜式”,点击下就可以将应用发布到腾讯云
  • 小程序具有微信天然的关系链与获客能力(这也是小程序最大的优势)

        但是,时间没有完美的事物,计算机世界里也没有完美的技术,你以为的优势在另一方面却成了缺点:

  • 小程序为了简化复杂性,做了一些 UI 上的设计规范,确实方便了很多对 UI 要求不高的应用。但也限制了那些对 UI 要求极高的产品发挥
  • 不支持现有的 HTML DOM 结构,而是自己给出了一系列的组件,造就了一个封闭的开发环境
  • 小程序只实现了模块化,并没有实现自定义组件,这是最令人不满意的地方

二、小程序会淘汰原生 APP 么

        不会。连 Hybrid App 都无法撼动 Native App 的地位,又何况小程序本身只是 Hybrid App 的一个子集,运行在微信这个 Native App 之下呢?除了 Hybrid App 本身与 Native 技术的差距,微信对小程序还附加了诸多限制和自身定位也非常明确——做低频和业务逻辑不复杂的应用。

转载于:https://my.oschina.net/u/3375733/blog/3005296

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值