V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Aegwynn
V2EX  ›  程序员

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

  •  2
     
  •   Aegwynn · 2015-03-18 14:15:07 +08:00 · 9986 次点击
    这是一个创建于 3537 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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 和游戏还是做原生的..
    RihcardLu
        15
    RihcardLu  
       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   ·   实用小工具   ·   3123 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 00:15 · PVG 08:15 · LAX 16:15 · JFK 19:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.