欢迎访问【精品信息提供平台】太少网
设为首页 | 收藏本站
国际信息 民生信息
时政信息 经济信息
社会信息 体育信息
名人信息 政坛人物
时事观察 政策解读
法治生活 法律法规
安全生产 食品安全 生态环保
健康卫生 房产商情 财经在线
娱乐资讯 旅游天下 科技之窗
文化名人 文化产业
中华情缘 书画收藏
报料投稿 查询系统
您所在的位置: > 法律法规 >

北京软文发布_移动开发中HTML5能否替代本地程序?

时间: 2019-09-10 14:44 作者:北京网络公司_北京网站制作 来源:北京网站优化_北京网站建设 点击:

  随着移动设备越来越先进,对HTML5的支持度越来越高,我们进军移动领域的时候,都会遇到一个问题,是选择HTML5和还是Native(用原生代码编写的本地程序)?HTML5的前景无疑是诱人的,一句“Write once, run anywhere”就可以秒杀一切。笔者最近两年来对HTML5与Native有较为深入的研究,觉得两者之间不能仅仅是二分法来选择,还要根据企业自身的情况、团队的构成、公司的战略以及产品的特点来综合选择。

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

  谈谈HTML5

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

  2.实时更新,通常平台的审核都需要七个工作日左右的时间,如果你发布之后发现问题怎么办?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程序很好地交互,并且能调用本地资源等等特性。但最后结果确不是那么令人满意,比如HTML5在动画切换的时候,有时候候会有一些莫名其妙的问题,当然你可以告诉我把动画效果关了,但这看起来很死板,最后我不得不关闭某些动画。而用Objective-c编写程序就没这么多事了,几句简单的代码可以实现很酷的动画,用HTML5需要更多的代码,甚至根本无法实现。

  而且移动设备上的HTML5开发对开发人员的技术有非常高的要求,不是一般的Web前端人员能解决的,通常拥有这样技术的人才,工资水平也不会比Native开发人员低多少。如果你仅仅是要开发一个移动设备上的网站,这会简单很多,但如果你希望模拟Native应用,并且拥有较高的效率和优雅的用户体验,这就很有技术含量了。不要小看Javascript这类Web开发语言,通常我的看法是越简单的语言越会体现出技术人员的水平,特别是规划设计能力。

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

  如何选择?

  是否这样,我们就不要选择HTML5了呢?我在前面说过:“要根据企业自身的情况、团队的构成、公司的战略以及产品的特点来综合选择”,我最近在关于HTML5讨论的微博上也有谈到:“HTML5是战略性方向,Facebook和Google已经布局,Google Mobile在iPhone上的体验可以媲美Native。基本上Native+Web App可以秒杀多数应用,如果不愿意受制于各种Store,单独的Web App也是一个不错的方向。对于游戏类和对硬件环境依赖严重的应用,只能是是Native”。仅管有这样那样的问题,但HTML5是一种趋势,【北京小程序制作:15611115563】,在未来三至五年,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的快速,【北京网站建设中心:15611115563】,但我们又想获得机械硬盘的高性价比。我认为在5-10年内,这都会是一种不错的解决方案,当HTML5和硬件发展到一定水平之后,我们再完全转向HTML5成本也会非常低的。

  如何做?

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

  

移动开发中HTML5能否替代本地程序

 

(责任编辑:北京网站建设,北京网站制作公司)

国际新闻

更多>>

民生新闻

更多>>

最新文章

推荐文章

Copyright©2018 Inc. All Rights Reserved.太少门户信息网 网站地图 xml
工信部网站备案: 冀ICP备16016618号