HTML5与原生开发孰优孰劣?这场战争是时候结束了

2023-11-22 00:21

本文主要是介绍HTML5与原生开发孰优孰劣?这场战争是时候结束了,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

HTML5和原生开发到底孰优孰劣?

没错,这是一个被大家炒烂了的问题。如果,你去问身边做HTML5和原生应用程序开发的程序员,他们一定是各执一词。或许,很多市场分析师和战略专家会把这场争论再夸大一些,但其实这场辩论早就有了结果,是时候结束争执了!

早在2012年,Facebook的首席执行官马克·扎克伯格(Mark Zuckerberg)表示,对HTML5的赌注成为他最大的错误,这至少耽误了两年。从这之后,HTML5就渐渐处于边缘化的境地了。

曾经,在一场关于移动应用程序开发技术相关的大会上,有一个初期创业者问了这样一个问题:“作为初创企业,缺钱缺人缺资源,我们是否可以考虑采用HTML5的方式开发应用程序呢?”当时,在场的很多专家给出的意见是:“就算可能会慢点,也还是要选择原生。”

 

虽然HTML5在过去几年取得了良好的进展,很多应用程序开发者也将HTML5列为他们最常用的移动平台(可以理解,鉴于其通用能力)之一,但市场最终还是决定了原生移动应用程序开发的方式。

客户选择原生开发方式

 

研究表明,移动体验对用户是否购买有着巨大的影响。Oracle发现,超过一半(55%)的受访客户认为,较差的用户体验会大大降低用户数,对应用程序的未来有很大的影响。所以,很多客户宁愿花重金选择原生开发方式,HTML5或混合应用程序开发还有很多不足,让客户产生不满。

 

这里有一个真实的案例:一个叫Fly Delta的原生应用程序与与竞争对手的基于Web的应用程序的对比。Fly Delta的客户得益于用户友好的本机功能,以快速获取记录,提交行程修改等,HTML5应用程序显然不能提供本地应用程序众所周知的简单体验,最终导致失去竞争优势。

 

为什么本地应用程序脱颖而出

 

HTML5应用程序的优点
通过移动工具提供现有内容的简单选择。

最简单的开发方式:建立一次,便可用于所有工具。

 

HTML5应用程序的缺点
较差的用户体验:用户预计的移动应用程序有着,一个引人注目的用户界面; 受益于移动设备硬件的独特功能; 适时的消息推送。这些通常应该具备的信息和功能却在手机web上受到了极大的限制。

较差的性能:长时间的负载和无法在离线或低带宽模式下运行的功能。

 

HTML5混合移动应用的优点
使用HTML5或类似技术构建的移动应用可以提供消费者手机上的“区域”,可用于弥补本机应用程序和移动网站之间的一些差距。

HTML5或混合应用程序是具有互联网开发功能的团队吸引人的途径之一,并希望构建移动应用程序以获得额外的参与。

 

HTML5混合移动应用缺点
一个混合应用程序基本上是一个包含“Web功能”的移动网站,但上述所有UX /整体性能问题仍然存在。由于这些应用需要一个恒定的网络连接,它们限制了部分功能,导致用户无法在低/无带宽区域中使用它们。

这些应用程序与每个工具以完全相同的方式构建;,没有客户在移动体验中期待的独特功能。

 

本地移动应用开发

自定义的原生应用程序提供了极好的消费享受,功能最强大。

 

优点
1、干净的UI。
2、尖端的设备和人才。
3、与Web应用程序相比,更快的加载速度。
4、在线或离线的卓越表现。
5、更高的可发现性

6、与HTML5相比,安全性更高。

 

缺点
每个移动平台都需要一番改进并且价格昂贵!

苹果今年发邮件致开发者“禁止热更新”事件,其实也表明了苹果的态度,在移动开发领域,苹果显然也更支持原生开发。长远来看,原生开发才是企业的正确选择!但近几年,阿里推出的Weex渐渐显山露水,这个动态化框架似乎显示出了巨大的潜力,未来移动开发这片天下会不会属于Weex呢?

文章来自:第九程序

转载于:https://my.oschina.net/u/3396785/blog/889147

这篇关于HTML5与原生开发孰优孰劣?这场战争是时候结束了的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/406143

相关文章

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

vue, 左右布局宽,可拖动改变

1:建立一个draggableMixin.js  混入的方式使用 2:代码如下draggableMixin.js  export default {data() {return {leftWidth: 330,isDragging: false,startX: 0,startWidth: 0,};},methods: {startDragging(e) {this.isDragging = tr

vue项目集成CanvasEditor实现Word在线编辑器

CanvasEditor实现Word在线编辑器 官网文档:https://hufe.club/canvas-editor-docs/guide/schema.html 源码地址:https://github.com/Hufe921/canvas-editor 前提声明: 由于CanvasEditor目前不支持vue、react 等框架开箱即用版,所以需要我们去Git下载源码,拿到其中两个主

React+TS前台项目实战(十七)-- 全局常用组件Dropdown封装

文章目录 前言Dropdown组件1. 功能分析2. 代码+详细注释3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲全局Dropdown组件封装,可根据UI设计师要求自定义修改。 Dropdown组件 1. 功能分析 (1)通过position属性,可以控制下拉选项的位置 (2)通过传入width属性, 可以自定义下拉选项的宽度 (3)通过传入classN

Eclipse+ADT与Android Studio开发的区别

下文的EA指Eclipse+ADT,AS就是指Android Studio。 就编写界面布局来说AS可以边开发边预览(所见即所得,以及多个屏幕预览),这个优势比较大。AS运行时占的内存比EA的要小。AS创建项目时要创建gradle项目框架,so,创建项目时AS比较慢。android studio基于gradle构建项目,你无法同时集中管理和维护多个项目的源码,而eclipse ADT可以同时打开

js+css二级导航

效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Con

基于Springboot + vue 的抗疫物质管理系统的设计与实现

目录 📚 前言 📑摘要 📑系统流程 📚 系统架构设计 📚 数据库设计 📚 系统功能的具体实现    💬 系统登录注册 系统登录 登录界面   用户添加  💬 抗疫列表展示模块     区域信息管理 添加物资详情 抗疫物资列表展示 抗疫物资申请 抗疫物资审核 ✒️ 源码实现 💖 源码获取 😁 联系方式 📚 前言 📑博客主页:

vue+el国际化-东抄西鉴组合拳

vue-i18n 国际化参考 https://blog.csdn.net/zuorishu/article/details/81708585 说得比较详细。 另外做点补充,比如这里cn下的可以以项目模块加公共模块来细分。 import zhLocale from 'element-ui/lib/locale/lang/zh-CN' //引入element语言包const cn = {mess

vue同页面多路由懒加载-及可能存在问题的解决方式

先上图,再解释 图一是多路由页面,图二是路由文件。从图一可以看出每个router-view对应的name都不一样。从图二可以看出层路由对应的组件加载方式要跟图一中的name相对应,并且图二的路由层在跟图一对应的页面中要加上components层,多一个s结尾,里面的的方法名就是图一路由的name值,里面还可以照样用懒加载的方式。 页面上其他的路由在路由文件中也跟图二是一样的写法。 附送可能存在

vue+elementUI下拉框联动显示

<el-row><el-col :span="12"><el-form-item label="主账号:" prop="partyAccountId" :rules="[ { required: true, message: '主账号不能为空'}]"><el-select v-model="detailForm.partyAccountId" filterable placeholder="