谈起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的技术还会有革新,咱们一块儿期待下一个时代的到了。前端