[话题讨论] HTML5 是否会冲击甚至颠覆 iOS/Android 等原生 APP 开发? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Aegwynn
V2EX    程序员

[话题讨论] HTML5 是否会冲击甚至颠覆 iOS/Android 等原生 APP 开发?

  •  2  
  •   Aegwynn 2015-03-18 14:15:07 +08:00 10368 次点击
    这是一个创建于 3867 天前的主题,其中的信息可能已经有所发展或是发生改变。
    2014年10月底,HTML5规范正式定稿,结束了长达8年的长跑。相信HTML5未来的发展会越来越好,而iOS/Android APP开发也是如日中天。

    iOS与Android各自拥有大量的用户,这就意味着需要两班人马开发维护。同时还得顾及版本、手机规格、屏幕尺寸等等百花齐放的特性(Android不用多说,各种机型。即便是iPhone,某些APP未对大屏幕做优化,在6 plus下显示效果也是大打折扣),为此反复进行调试,都是非常繁琐的事情。

    而随着手机硬件的高速发展和HTML5的规范定稿,相信它自身的“性能”将不再是瓶颈。毕竟它只需要维护一套代码,就可以在不同平台下良好的运行。发布、版本升级,终端用户几乎感受不到。

    我在想,未来HTML5会冲击甚至颠覆原生APP的开发,就像B/S逐步取代C/S一样。欢迎讨论。

    有篇文章写得挺全的:
    http://www.csdn.net/article/2014-11-06/2822513-how-html5-changes/1
    第 1 条附言    2015-03-18 15:10:53 +08:00
    补充说明一下,这里不是争执HTML5和Native APP谁取代谁的问题。而是讨论HTML5的发展趋势,会对Native APP造成哪些影响,影响有多大(甚微,各占半壁江山,颠覆?)。还有大家不要提到HTML就局限于浏览器,浏览器只是载体之一。

    我很赞同最后的总结:让用户和开发者都更方便的趋势是不会错的。
    54 条回复    2015-03-20 09:58:52 +08:00
    andybest
        1
    andybest  
       2015-03-18 14:19:26 +08:00   1
    HTML 5 能否构建本地化应用?即将页面在 app 安装时下载至设备中,这样即使 offline 后也可以浏览部分内容,或者已经下载完毕的离线内容
    hyzjshwo
        2
    hyzjshwo  
       2015-03-18 14:24:12 +08:00
    放心 不能!是不是w3c能解决跨浏览器兼容问题?这个问题不是协议问题,而是各大厂商利益问题。
    Aegwynn
        3
    Aegwynn  
    OP
       2015-03-18 14:32:32 +08:00
    @hyzjshwo 个人觉得HTML5和Native APP会互补共存,对比现在的APP一家独大,HTML5未来的比重会逐步提升,不是说谁取代谁。HTML5的主要载体不一定是浏览器哦。
    object1984
        4
    object1984  
       2015-03-18 14:36:11 +08:00
    肯定会,现在混合开发的越来越多了,以后肯定是趋势。
    xiaoyuvps
        5
    xiaoyuvps  
       2015-03-18 14:43:30 +08:00
    HTML5的最大问题是要连网。
    RobberPhex
        6
    RobberPhex  
       2015-03-18 14:55:42 +08:00
    不好说,但是至少还有很长的路要走。

    现在Android还在讨论性能呢,大部分应用还是不能直接用HTML5。

    不过说起来,性能到了就可以上HTML5 ,比如现在的PC端就是一样的逻辑。
    lzyroot
        7
    lzyroot  
       2015-03-18 14:56:15 +08:00
    互补差不多,颠覆呵呵
    lingo233
        8
    lingo233  
       2015-03-18 14:56:52 +08:00 via Android
    不可能,你先把国内那群清理大师干翻再说
    21grams
        9
    21grams  
       2015-03-18 15:02:36 +08:00
    当年facebook也是这么想的,后来撞的头破血流后乖乖的回到了native.
    Aegwynn
        10
    Aegwynn  
    OP
       2015-03-18 15:05:53 +08:00
    @21grams 那时候“天时地利人和”三者不具备呢,引用格罗姆一句话“时代变了”。我觉得多少还是有影响的。
    ybh37
        11
    ybh37  
       2015-03-18 15:13:56 +08:00
    游戏是原生最后的自留地,就像PC上的发展一样。
    话说,从10年做iOS开发以来,Hybird一直是优先选择。
    Aegwynn
        12
    Aegwynn  
    OP
       2015-03-18 15:15:39 +08:00
    @ybh37 页游会不会火?
    eary
        13
    eary  
       2015-03-18 15:18:24 +08:00
    不会,体验可能跟android应用差不多。
    special
        14
    special  
       2015-03-18 15:18:25 +08:00
    iOS 下 HTML5 的体验还可以,Android 就....

    嗯,性能上了,体验流畅了,确实就有一批 app 会 HTML5 化,但是一些大 app 和游戏还是做原生的..
    kechx
        15
    kechx  
       2015-03-18 15:20:43 +08:00
    这个觉得还是很有前途的,现在开发android的还要考虑2.3就像前端还要兼容IE6,太痛苦了.
    unknownservice
        16
    unknownservice  
       2015-03-18 15:26:55 +08:00
    颠覆肯定没戏,一个性能问题就压死你了。
    有发展是一定的,前端路过,兼容性实在是太苦逼了,请务必快点一统江湖。
    jhdxr
        17
    jhdxr  
       2015-03-18 15:32:16 +08:00
    @21grams 于是现在出现了react.js和reactnative
    daiyuechuan
        18
    daiyuechuan  
       2015-03-18 15:40:31 +08:00   1
    个人感觉HTML5在一些应用场景还是很好的,比如以文本为主的App,但有些应用还是更多的依赖native特性来完成,比如目前HTML5的混合开发模式是需要调用那些已经成功封装,或者允许被封装的native包的,但有些native特性是不允许被封装的,比如apple watch的一些特性,就不允许第三方去封装,所以最终还需要我们要做什么。
    lingyired
        19
    lingyired  
       2015-03-18 15:45:42 +08:00
    HTML5 不会挂掉,浏览器会挂。(挂不是只消失,而是指使用率下降)
    kisshere
        20
    kisshere  
       2015-03-18 15:48:17 +08:00 via Android
    html5是世界上最好的编程语言
    nevin
        21
    nevin  
       2015-03-18 15:51:53 +08:00   1
    短时间内应该没有公司这样做,我之前调查SVG在android4.4中的支持情况,很多接口缺失,其他的规范也有不支持的。
    4.4之前还有那么多款老版机型(有的可能更根没有支持HTML5),也就是说兼容性可能比IE系列调试器来还虐心,在某些api缺失的情况下估计只能做小项目,搞不了大工程。

    不过肯定有人会贪“便宜”,苦逼的还是前端,到最后搞不出来,大家一起哭。
    ianva
        22
    ianva  
       2015-03-18 16:00:17 +08:00   1
    其实 HTML5 的发展还是没有如期待的那样,这篇文章是关于手机端的 web vs app 的 http://www.businessinsider.com/mobile-web-vs-app-usage-statistics-2014-4
    web 的占有率在移动端其实一直在下降,所以很多人会担心,app 会毁掉 web 的开放性,因为很有可能移动端上 app 最终会占据主流
    还有一篇文章是说关于浏览器和原生的性能问题的,忘了在哪了,大概意思是在 arm 的架构下,浏览器想达到一个性能上的突破其实要非常久的时间,从这方面来说 app 的体验自然是更好的,在各自的私有平台来看也是
    react native 算是最好的消息,其实和 html5 本身关系不大
    web 的优势在于信息的共享和传播,比如转发篇文章,网站,通过搜索引擎找到信息等等,在作为 app 方面显然不具备 native 的优势,未来一段时间在移动端还是作为,信息的传播和粘合剂的作用更多。
    Actrace
        23
    Actrace  
       2015-03-18 16:00:52 +08:00   1
    HTML5还是缺乏一个事实上的执行标准。
    App毕竟有系统级的支持,统一的处理流程。然后HTML的技术实现则是有多家方案商在做(webkit,ie,mozila之流),性能这块短期无法跟上,特性支持也是比较乱。
    也就是说,即使用上了HTML5,实际上开发并维护数个可用版本的巨额成本还是存在的。
    App相比之下则显得更加高效,成本也好控制。
    当然,就趋势上来说,一种标准当然可以减少开发维护成本,我们都希望HTML5成为那个标准,不过Java何尝不是呢。
    xuwenmang
        24
    xuwenmang  
       2015-03-18 16:25:57 +08:00   1
    APP跟跟桌面程序有什么区别?


    活不了几年了。
    ybh37
        25
    ybh37  
       2015-03-18 16:31:43 +08:00
    @Aegwynn 我哪能猜准 ,哈哈。对页游没接触,没研究。
    btw,感觉最近很多软文的背后都有自己的算盘
    物联网现在借着移动互联网的势头大做文章,这几年没看到什么实质的进展
    数字天堂的这篇软文中,我更多看到的是对它自己产品的介绍,作为国内企业移动化的供应商,经历了资金链风波后,缓过来了。
    cfan8
        26
    cfan8  
       2015-03-18 16:45:23 +08:00
    HTML5主要还是性能跟不上,什么时候性能问题能解决Native App才会真正收到冲击
    scarlex
        27
    scarlex  
       2015-03-18 16:53:15 +08:00
    没人提 HTML5 各种随机崩溃么?
    whxme
        28
    whxme  
       2015-03-18 18:39:37 +08:00
    简单的app,就用html5吧
    sudoz
        29
    sudoz  
       2015-03-18 19:22:24 +08:00
    @xuwenmang
    桌面程序日薄西山是因为移动互联网时大势所趋,这跟android/iOS原生应用活几年有什么必然关系吗??
    难道以后时呼吸互联网时代从而取代了移动互联网?呵呵
    WispZhan
        30
    WispZhan  
       2015-03-18 19:45:52 +08:00
    只会混合,不存在取代。
    xuwenmang
        31
    xuwenmang  
       2015-03-18 20:19:40 +08:00
    @sudoz 只是看到各种破网站也要各种APP的蛋疼的需求想吐槽罢了。
    kzzhr
        32
    kzzhr  
       2015-03-18 21:12:56 +08:00
    十多年前,我记得在浏览器里听个歌都卡的不行,更不用提看视频了。
    那个时候我们看视频第一会选择电视
    fl0at
        33
    fl0at  
       2015-03-18 21:31:25 +08:00
    表示正在开发移动端的H5游戏,目前的趋势来看肯定是越来越好的,但和原生应该是一个互补共存的关系
    lalalanet
        34
    lalalanet  
       2015-03-18 21:32:14 +08:00
    @andybest 可以,gmail的Html5网页版已经这么做了。
    reeco
        35
    reeco  
       2015-03-18 21:32:44 +08:00
    HTML5慢可以缓解,但无法解决
    lalalanet
        36
    lalalanet  
       2015-03-18 21:32:49 +08:00
    @Actrace 别逗了,webkit早就是html5的标准了
    wadezhao
        37
    wadezhao  
       2015-03-18 21:36:05 +08:00
    刚接触HTML5开发的人都这么热血沸腾。

    十几年前就开始接触手机应用开发,兼管原生与混合开发团队三年多的老码农表示,如果你想听论点,那就是HTML5绝对冲击原生开发,但想颠覆,至少从目前还看不出明显的趋势。
    如果你想听论据,抱歉没那么多时间打字,这玩意是个太复杂的话题……………………
    refresh
        38
    refresh  
       2015-03-18 21:40:03 +08:00
    HTML5其实真不是重点,重点是硬件水平的提升,CSS3才是重点。
    基于Web的应用能替换部分功能,但替代原生基本不可能,除非硬件水平大幅度提升,以及底层上的支持。
    dexbol
        39
    dexbol  
       2015-03-18 23:00:34 +08:00
    Web is dead , thanks
    saki
        40
    saki  
       2015-03-18 23:03:05 +08:00
    根据摩尔定律,性能问题都不在会是问题。
    虽然现在有直接用canvas来利用硬件加速获得更好性能,一些常用效果还需要重新构建
    so898
        41
    so898  
       2015-03-18 23:38:30 +08:00
    之前我每次看到类似的力挺HTML5的文章,都会在之后一段时间里发现各种做HTML5页游或者微信、微博手机端网页游戏的公司在寻求融资……
    你们到底把HTML5当成什么了!!
    iwege
        42
    iwege  
       2015-03-19 00:32:02 +08:00
    我的问题是:

    你们讨论的到底是

    Browser VS 其他Native App呢?

    HTML5 VS Java / Swift / C / C++ 呢?

    还是 HTML5 VS Native App

    如果是HTML5 和 Native App比较,要不要比较下HTML5和 Browser ? 对应过来我觉得这么比较还是有点看头的。
    pppanda
        43
    pppanda  
       2015-03-19 09:27:21 +08:00
    各自发挥各自的优势才是最好的办法,盲目的去追求一种技术方案是不可取的。
    zongwan
        44
    zongwan  
       2015-03-19 09:52:17 +08:00
    根据摩尔定律 手机电池 每18个月 爆炸威力翻倍
    fr0m
        45
    fr0m  
       2015-03-19 09:54:04 +08:00
    janxin
        46
    janxin  
       2015-03-19 11:10:04 +08:00
    这种讨论一般是月经了吧,请先搜索本社区的之前讨论....
    hooluupog
        47
    hooluupog  
       2015-03-19 11:31:23 +08:00
    web app和 native app之争。短期内不太可能,应该是共存的局面还要存在相当一段时间。目前国内web app(主要是游戏方面)做得慢慢有一些起色了,facebook从对html5的绝望到重新开始支持。
    GOOG,MS,Mozillia都在大力发展web,只有APPL目前还对web不是非常投入,不过我觉得web app值得投入精力,虽说现在的前端很混乱,学习起来也很辛苦。
    zsk425
        48
    zsk425  
       2015-03-19 11:51:35 +08:00
    我认为Web App必然会取代很多现有Native App在做的事,但Native App将会在特定领域一直有价值。很赞同楼主提到的文章里的观点,这是个喜人的趋势。
    jun4rui
        49
    jun4rui  
       2015-03-19 12:07:54 +08:00
    首先,HTML5肯定会对传统开发方式有较大的冲击。
    原因很简单那,因为大量的手机APP其实功能都很简单,并不需要处理太复杂的逻辑,这些地方HTML5的优秀呈现层比传统的本地代码模式有很大优势。

    但是还是有一些需要复杂运算的地方,但是不会多,首先因为手机平台本身就不是一个适合做复杂运算的平台,这就注定了轻量级APP占据绝对大多数的地位。
    zhang2273388
        50
    zhang2273388  
       2015-03-19 12:42:01 +08:00
    我很看好HTML5
    coolicer
        51
    coolicer  
       2015-03-19 13:36:24 +08:00
    如果是担心性能的同学,当html5写的代码已经能翻译成本地组件,你们还会说性能有问题吗?
    zhicheng
        52
    zhicheng  
       2015-03-19 14:21:44 +08:00   2
    不是会不会,而是什么时候。

    楼上诸位提出的问题,根本不是完全否定的问题,作为一个工程师,我的电脑,常年只开三个桌面程序:浏览器,终端和即时聊天。手机也基本上浏览器和即时聊天就够了。看看你们天天用的 App 是哪些?Twitter ?新浪微博?Facebook ? 这些 App 是一定能被浏览器取代的。

    之所以现在没有取代,是因为各平台商都有私心,因为如果哪天 Web 大一统了,就没有平台商什么事儿了。这也是为什么现在国内和国外各公司力争浏览器市场一样。

    举一个大家都很清楚的例子。Windows 的 IE 从 IE 6 之后,几乎没有什么特别大的变化。但到后来因为苹果的 iPhone 卖得多了,Mac 也卖得多了,因为 Flash 以及应用缺乏的原因,苹果大力推广 HTML5 和 各种浏览器黑科技。WebKit 的贡献自然也不用我多说。这么多年过去之后,Mac 和 iOS 的 App 多了起来,苹果占据主流,微软成为弱势,所以微软近几年就把浏览器做得非常好。更别提横插一脚的 Google Chrome 。

    谁掌握了浏览器,谁就掌握了未来。
    jun4rui
        53
    jun4rui  
       2015-03-20 07:34:18 +08:00
    @zhicheng 苹果虽然开始大力推HTML5,那是因为开始iPhone根本不打算给你本地开发SDK,随一代iPhone出来的只有web开发软件的方式,是一年后才废掉Web方式采用本地SDK了。然后苹果就渐渐在html5上裹足不前。

    反而是Mozilla和Google才是HTML5的大力推广者。asmjs、v8引擎这些都是实打实的突破性的东西,safari除了抄袭自khtml的内核并且兼容最新的标准外,啥东西能让大家受益的?很少,甚至微软都有Ajax这种玩意。

    苹果是出主流浏览器厂商贡献最少的一个了
    appdevdaily
        54
    appdevdaily  
       2015-03-20 09:58:52 +08:00
    感觉技术的走向还是大厂之间的博弈
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2489 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 11:10 PVG 19:10 LAX 04:10 JFK 07:10
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86