談起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的技術還會有革新,咱們一塊兒期待下一個時代的到了。前端