Facebook新框架React Native,一套搞定App開發[轉]


Facebook新框架React Native,一套搞定App開發

  
React Native-目前最火的前端技術

  本文來自微信公眾號“給產品經理講技術”(pm_teacher),歡迎關注。

  做為一名產品經理,你是否遇到過這樣的窘境,“幫我把字體調成 16 號唄,顏色變成 #FFFF00FF,老大說這里最好改一下”,作為一名 app 的開發只能無奈但心里竊喜的告訴你,“只能等下個版本了,必須要重新發布才能改”,如果你問為什么不能改了就生效啊,那說明你對技術的理解要么真的很差,要么你就是知道這項 React-Native 新技術所爆發出來的力量。

  React Native 是 Facebook 推出的一個用 JavaScript 語言就能同時編寫 ios,android,以及后台的一項技術,今年 9 月發布了 android 版本,又在程序員里面掀起了一波小高潮,不斷有喜歡嘗鮮的程序員投入到這個領域。

  用大白話說,就是從此一名程序員自己就可以創業了,他只用這一門技術,就可以同時寫出 androidapp,ios app,以及后台應用程序,並且,請注意這里,它可以做到實時熱更新(就像網頁一樣,改了一個字體,隨時可上線),app 也能做到隨時都能更新了,第一段講的那個需求可以分分鍾秒殺解決,不用新發版本,只需在服務器改動一下代碼即可,是不是很牛逼,是不是很牛逼,是不是很牛逼,真的很牛逼。

  到這里,你只需要理解一句話,就是 Facebook 提供了一套解決方案,它利用 JavaScript 作為開發語言,可以同時來編寫前端,移動終端,后台應用程序。

  我們再來講講,為什么 React Native 受到了如此大的關注,以及它的優越性到底在什么地方。

  目前,一個成熟的互聯網產品基本囊括了:移動終端和網頁兩種主要形態。在移動終端 app 和網頁的開發歷程中,涉及了很多技術角色:前端開發(俗名叫做網站的),移動終端開發(android 和 ios 開發,現在滿大街都是),后台開發(他們的程序大多沒有界面,主要是為網頁和 app 提供數據和保障服務的穩定性),每個角色各司其職,分別需要不同的技能,比如前端開發需要精通 html,css,javascript 這些基本的 web 語言知識。Android 開發用 Java(這個詞讀 “扎瓦”,別讀成了 “加瓦”,讀成這樣很 Low B 的)語言編寫,ios 開發用 Objective-c(把他想象成當年過計算機二級的那個 C 語言就可以了)編寫。后台開發,有的公司用 Java,有的公司用 C++,用啥的都有,能滿足性能需要就可以了。

  已經看崩潰了吧,對於一個非計算機專業的人,根本不會理解他媽的為什么要存在這么多語言,為什么這里要用 C 語言,那里要用 C++,有的地方要用 Python,而又有很大的一個人群對你高呼:“PHP 才是世界最好的語言”。其實他們每種語言都有不同的使用場景,有的語言效率高,有的語言語法更簡潔漂亮,有的是專為后台而生,有的是特定場景下的唯一選擇。如果你還聽不懂,我們就用大白話做個比喻,為什么避孕套有的是螺紋的,有的是顆粒的,有的是延時的,有的是超薄的,還有一個品牌號稱一只手就可以打開的,它們也都是依據個人身體狀態,以及不同場景分別發揮各自的強項。你隨便類比,任何一個領域,都有很多不同的工具來滿足不同的場景,是需求決定了當前狀態。

  現在好了,React 整套解決方案完成了江湖統一,FaceBook 也號稱這們技術是 “Learn Once,Write AnyWhere”,學習成本只有一次,卻完成了所有開發角色的統一。

  這意味着:

  1. app 將來都是可像網頁一樣熱更新,隨時發布。
  2. 對於一名開發人員,將再也沒有前端,終端,后台的區分,他所關注的就是做一整套應用程序,人力將得到最大幅度的整合與釋放。
  3. 代碼復用將會是主旋律,因為是一種語言,大家重復造輪子的成本會越來越節省。

  目前,React Native 也還是有一些缺點的,比如他的 sdk 組件包 size 還比較大,crash 還比較多,在 ios 上支持的內容已經相當不錯,android 還屬於初級階段,但是目前最新的版本也才是 0.16,相信再過一年, 一定會牛逼閃閃。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM