移动开发中HTML能否取代本地程序?

佚名 2022-08-14 01:17

对HTML5.支持度越来越高。当我们进入移动领域时,我们会遇到选择的问题HTML5和还是Native(本地程序由原始代码编写)HTML5的前景无疑是诱人的,一句话“Write once, run anywhere”你可以秒杀一切。近两年笔者对HTML5与Native经过深入的研究,我认为两者之间不仅可以选择两种方法,还可以根据企业自身的情况、团队组成、公司战略和产品特点进行综合选择。

HTML我无疑对5的发展前景非常乐观,各大公司也不遗余力地推广它。目前,三大主流智能机操作系统iOS、Android和WIndows Phone都已经支持大部分的HTML5特性。移动设备硬件军备竞赛也是HTML清除硬件障碍。根据目前的发展速度,我判断移动设备在三年内运行速度甚至更快HTML无论是标准还是硬件,都没有压力。目前主流智能机配备了双核处理器(以前笔误为浏览器)和1G以上内存,今年智能机没有这个配置你不好意思发布。

谈谈HTML5

1.HTML5可以让你摆脱对平台的依赖,用户打开浏览器,直接访问你的应用程序,而不需要通过各种方式Store的审核。

2.实时更新,平台审核通常需要7个工作日左右。发布后发现问题怎么办?Web这种方式没有问题。

3.Write once, run anywhere?

这是多少程序员的梦想,也曾经是Java令人兴奋的是,真正做过跨平台解决方案的人都知道,这只是一个口号,跨平台不那么容易玩。没错,HTML5可以实现Write once, run anywhere,但是我们不能写一个Hello World来run anywhere吧。不同的平台有自己的特点,不同的平台用户也有自己的操作习惯,如果你想取悦每个人,这意味着你不能取悦任何人。

4.减少开发工作量或简单开发

对老板来说,这是一个非常有吸引力的话题,因为减少工作量意味着节省更多的钱,没有老板不喜欢用更少的钱做更多的事情。目前,一个非常大的问题是,移动设备开发人员,特别是iOS开发人员很难找到,因为所有技术好的人都是自己应用的,人们一个月能挣几万甚至更多。为什么要进你的公司?怎么说也是自己的事业,有无限的可能性,也能充分享受自由。但如果能充分利用HTML5.然后我们可以招聘Web前端开发人员构建移动应用,不用担心招聘问题。因为在很多人眼里,HTML5/CSS/Javascript都是技术含量不大的东西,真的找不到人,找一些实习生学习。

但问题是,工作量真的会减少吗?技术门槛真的那么低吗?答案是NO!

我花了半年时间开发一个基于它的HTML5的移动框架用于模拟Native应用,让HTML5应用程序看起来尽可能像本地应用程序。注意:是的。这有点像jTouch,但不一样的是,它能和Native程序交互良好,可调用本地资源等特点。但最终的结果并不令人满意,比如HTML当动画切换时,有时会有一些令人费解的问题,当然,你可以告诉我关闭动画效果,但它看起来很僵硬,最后我不得不关闭一些动画。而用Objective-c写程序没那么多事。几个简单的代码可以实现很酷的动画。HTML需要更多的代码,甚至根本无法实现。

移动设备HTML5.开发对开发人员的技术要求很高,是一般的Web前端人员能解决的问题,通常有这样的技术人才,工资水平不会比Native开发人员低多少?如果你只想在移动设备上开发一个网站,那就简单多了,但如果你想模拟它Native技术含量很高,应用效率高,用户体验优雅。不要小看Javascript这类Web开发语言,通常我认为语言越简单,技术人员的水平就越高,尤其是规划设计能力。

5.其他问题,资源调用的限制,如iOS中有Javascript运行不得超过15秒的限制,本地硬件设备硬件设备(如相机等),不得使用推送服务等。

如何选择?

我们不这样,我们都不会选择HTML5了呢?我前面说过:“根据自身情况、团队组成、公司战略和产品特点进行综合选择”,我最近在谈HTML微博上也有讨论:“HTML五是战略方向,Facebook和Google已经布局,Google Mobile在iPhone上的体验可以媲美Native。基本上Native Web App如果你不想受制于各种应用程序,你可以杀死大多数应用程序Store,单独的Web App也是个好方向。基本上Native Web App如果你不想受制于各种应用程序,你可以杀死大多数应用程序Store,单独的Web App这也是一个很好的方向。严重依赖硬件环境的游戏和应用只能是Native”。只有这样那样的问题,但是HTML在未来三到五年,HTML5将取代许多本地应用程序,但就像我们多年前一样B/S架构取代C/S结构相同,需要一个过程。

通常在HTML与Native我们之间有三种选择——HTML5、Native App以及HTML5 Native,HTML5就是指纯Web用户需要打开浏览器,然后输入应用程序的网站访问。Native指基于特定平台开发的应用。Native HTML5其实是一种加壳的方式,会HTML5用浏览器包装,但这对用户来说是看不见的。用户没有异物感和Store上下载的App没有什么不同。

就我个人而言,我更受尊敬HTML5 Native是的,这种加壳的方式可以让你享受Native与HTML5的双重优点是技术含量要求高。当然,我在这里指的不是简单的HTML5包装在浏览器中,Native与HTML5会有很多互动,其实有点像混合硬盘,即使我们享受它SSD它很快,但我们想要获得高性价比的机械硬盘。我认为在5-10年内,这将是一个很好的解决方案HTML5.硬件发展到一定水平后,我们将完全转向HTML成本也会很低。

如何做?

假设有一个项目不那么严重地依赖当地的环境,比如微博客户端,各种社交食品甚至LBS我们都可以使用应用程序HTML5 Native。如图所示,我们可以使用核心代码Core该代码与平台无关,主要是业务逻辑和和和平Shell交互,代码使用Web语言编写。在Core在层面上,我们根据不同的移动平台制作不同的平台UI。最后我们将上述两层放到各平台的Shell中,这个Shell它主要由浏览器完成,当然还包括一些硬件操作和读取本地资源,如GPS、重力感应、相机调用、地图、推送通知或IAP等。

我们可以把Web升级部分部署在服务器上,用户运行App后,App将强调服务器获取最新信息Web程序和下载操作可以跳过各种程序Store实现快速更新的目的。而且,如果用户不能访问互联网,我们可以让用户使用上一个版本的程序,而不是纯粹的Web App那样,用户必须联网

好处

1.用户可以离线使用

2.更新下载量尽可能可以全部更新,也可以选择更换部分文件

3.代码非常安全,众所周知Web应用有一个很大的问题就是代码安全的问题,但现在我们可以将Web所有代码都密,本地应用解密后运行,大大提供了代码的安全性。

4.浏览器可以作为中介充分利用Native例如,可以使用的好处GPS、相机、本地相册、阅读本地联系人、推送功能等。最重要的是,有些Web我们可以使用无法实现的功能Native来实现。

5.跨平台,大部分核心代码不需要重写,Javascript如果使用代码好,可以在很多地方使用,包括移动应用、移动网站、PC甚至可以使用网站、各种浏览器插件WebKit封装作为跨平台应用。

5.跨平台,大部分核心代码不需要重写,Javascript如果使用代码好,可以在很多地方使用,包括移动应用、移动网站、PC甚至可以使用网站、各种浏览器插件WebKit封装作为跨平台的应用程序。诚然,这种方式并非完全跨平台,但这样也足以减少很多工作量了,特别是后期的维护。而且,完全跨平台毫无意义。不同的平台有自己的风格。为了更好的用户体验,界面层仍然需要有针对性的开发。

坏处

我认为最大的缺点是技术困难,如果只是简单的浏览器包装几个HTML文件,没有技术难度,但是要创建一个系统级的东西,技术难度很大。这就要求有人了解三个主流平台的浏览器特性Native程序的开发,要精通HTML5/CSS3/Javascript,最重要的是要有很强的架构设计能力。

如果你想找到另一个缺点,那就是它不能满足所有的需求,也不能取代它Native,但我认为他可以取代他的大部分Native。

适合我们吗?


首先,从产品的角度来看,你的产品是否严重取决于当地的环境,比如图像处理和华丽的游戏。第二件事要考虑的是你的技术团队的组成,如果你的团队有一个牛人可以解决这些问题,并且有一些清洁Web对于前端的人,我想你可以考虑这样做。技术选择很重要,稍有不慎,后患无穷。三是考虑贵公司的战略,对HTML5.对未来发展的看法,愿意在移动互联网上付出多少代价,愿意做前瞻性的事情,愿意在前期投入更多资源,允许试错等等。

下一篇: 如何处理移动终端不符合规范的强制转码?
上一篇: 百度营销推广三项措施实现品牌新增长计划,加快品牌数字资产增值
相关文章
返回顶部小火箭