你的位置:首页 > Java教程

[Java教程]APP技术演化的路


  谈起APP,大家都太熟悉不过了,今天想谈谈这么多年技术演化的路。
  早期一些大公司就开始做一些APP了,例如facebook、google等国外的公司就已经开发这个技术路线,那个时候的APP数量很少,基本上我们可以理解为web时代的APP,都是用web的方式来实现APP的。也就在这个时候,我们听到了Html5的声音,当时大家一窝蜂都说H5未来将要一同江湖,当时的android呢分化也非常严重,相同的代码要切分很多份。所以当时有这样的声音。
  随着时代的进步,到了2010年左右的时候大概就是iphone4发布的时候,我们可以看到随着而来的就是大量的应用的诞生。各种技术也相应的出现了,但是主要以H5的方向居多,当时就有phonegap(比较早了)的出现,可以实现快速APP开发,到了2012年,从facebook那里得知“扎克伯格自己亲口承认,过多的赌注压在HTML5上面是最大的一个错误。”我们也可以从facebook的APP发展看出一些端倪,首先,这种跨时代的东西,比如HTML5出来的时候,也出现了这个问题。你要写JS桥接,这样导致体量越来越大。接下来,会发现桥接代码非常乱,每个平台上UI都要妥协,在每个平台都不太好看,或者不是特别好用。最后,前端工程师最讨厌的一个问题,就是浏览器非标准化、不兼容。因此,移动开发也要考虑兼容相关的问题。 另外,我们做了这么多投入,所有技术的复杂度是客观存在的。你所要做的事情是,如何运用公司的方式,去解决客观的复杂度。如果想偷懒,最后你会发现你会吃不了兜着走。最关键的一点,当时APP并不是为用户量身打造,而是为我们的工程师所考虑。这些都是问题。所以,你的产品战略要为用户的体验为出发点,而不是因为某个技术如何牛逼而选。
  在往后发展,我们可以看到更多的企业回归到了纯原生开发的道路上,大家都意识到纯原生的APP开发才是正路,于是大家开发在这方向发力,就出现了现在的facebook的React Native、阿里的weex、杯子的deviceone,React Native和weex都是用js来写android、ios的语法,大家需要去看android、ios的sdk。Deviceone是用js来可视化UI,所有的组件都是纯原生的,不需要看android、ios的sdk就可以编程,基本这三个平台都是模块化的,如果你有精力学习android、ios的sdk,可以使用前两个平台,如果你想快速开发APP,不想知道android、ios的sdk,你可以试试deviceone。
  我相信在接下来的几年后,APP的技术还会有革新,我们一起期待下一个时代的到了。