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

相关文章

SpringBoot返回文件让前端下载的几种方式

《SpringBoot返回文件让前端下载的几种方式》文章介绍了开发中文件下载的两种常见解决方案,并详细描述了通过后端进行下载的原理和步骤,包括一次性读取到内存和分块写入响应输出流两种方法,此外,还提供... 目录01 背景02 一次性读取到内存,通过响应输出流输出到前端02 将文件流通过循环写入到响应输出流

SpringBoot+Vue3整合SSE实现实时消息推送功能

《SpringBoot+Vue3整合SSE实现实时消息推送功能》在日常开发中,我们经常需要实现实时消息推送的功能,这篇文章将基于SpringBoot和Vue3来简单实现一个入门级的例子,下面小编就和大... 目录前言先大概介绍下SSE后端实现(SpringBoot)前端实现(vue3)1. 数据类型定义2.

Python+wxPython开发一个文件属性比对工具

《Python+wxPython开发一个文件属性比对工具》在日常的文件管理工作中,我们经常会遇到同一个文件存在多个版本,或者需要验证备份文件与源文件是否一致,下面我们就来看看如何使用wxPython模... 目录引言项目背景与需求应用场景核心需求运行结果技术选型程序设计界面布局核心功能模块关键代码解析文件大

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注