為什麼要學習React Native
無論是移動平台的開發者,還是Web前端開發者,想必對現在「大紅大紫」的React Native都有所耳聞。那麼除了「乘著Facebook這顆大樹好乘涼」的優勢之外,React Native到底是何方「神聖」,有什麼令大家「趨之若鶩」的優點嗎???
Learn Once,Write Anywhere
這句話是React Native的官方宣傳廣告,也是其最大的特點和優點。不過這句話倒是耳熟,沒記錯的話,Java語言也提出來過類似的口號!不過他們的意思可是不同的,React是「降低學習成果,針對不同的平台可能還需要單獨為什麼要學習React Native
開發」,而Java語言的意思則是「只需要開發一次,就可以成功運行在不同的平台和設備上」。
簡單易學的開發語言
React Native開發是基於JavaScript語言的,雖然JavaScript也是一門靈活、強大且複雜的語言,但是對於新人來說,上手速度相比objective-C或Java等還是要快得多。而且。由於JavaScript嚴格模式的使用意見ECMAScript2015標準的推出,JavaScript被人詬病的各種問題大大減少。
不僅如此,Facebook為了進一步提高代碼的可讀性和開發效率,還擴展處理JSX語法,即一種可以在JavaScript代碼中直接書寫HTML標籤的語法。
React Native的樣式使用了類似CSS的規範,只是根據JavaScript的語法要求將命名方式改為了「駝峰命名法」。
接近原生應用的性能和體驗
對於React Native上述的倆個優點,混合應用開發的方式其實也都有,但是,混合應用開發的方式在實際開發中卻存在性能和體驗不佳的先天不足。但是!!!React Native雖然使用的是類似混合應用開發的語言,其實現的機制卻完全不同!!!React Native的底層仍然是基於原生平台的!所以React Native在性能和體驗上與原生應用幾乎沒有太大差別,用戶很難區分所使用的App到底是原生開發的還是React Native開發的。
完善的生態系統
React Native有著非常龐大的開發者社區和很高的活躍度,這點從React Native在Github 上線的第一天5000多顆星,截止2017年1月4日4萬多顆星、9000多次fork已經9000多次提交!同時Facebook還推出了官方的調試工具React Developer Tools和開發工具Nuclide。
網上的優秀開源項目和參考資料更勝數不勝數!
※Node—_filename與 dirname變數
※Node—require.cache對象介紹
※程序之前的鄙視!莫名戳中笑點!
※web開發者的最愛—Node.js
※VR帶領我們奔向太陽
TAG:我不是程序猿 |
※Ben Thompson:Facebook 改變 News Feed 的動機是什麼?
※jQuery UI 為什麼使用部件庫(Widget Factory)
※這雙刷屏的Nike Epic React Flyknit究竟有什麼特別之處?
※為什麼編程啟蒙要學 Scratch,不是Python?
※為什麼Facebook的Head of AI如此憎恨機器人Sophia?
※TensorFlow可以做什麼?讓Google Brain首席工程師告訴你
※蜘蛛Rescue Assist&Atlantic Salt橫向測評:同時擁有是一種什麼樣的體驗?
※Balenciaga和Vetements 勁敵出現?大師山本耀司 Y-3 秀場教你什麼才是極簡復古風
※Balenciaga 和 Vetements 勁敵出現?大師山本耀司 Y-3 秀場教你什麼才是極簡復古風~
※吳亦凡freestyle,張藝興balance,黃子韜go died,那鹿晗是什麼
※時髦辦 | Céline「落在」Saint Laurent前任設計師手裡會發生什麼?
※抖音檸萱wxx創作的原聲是什麼:短髮The Girl With Short Hair
※John Singer Sargent 他告訴我們什麼是現實主義
※Olivia Palermo向我們演繹了什麼叫做名媛式穿法
※抖音裡面甩手的歌名叫什麼 唱的是Movin like Berney
※為什麼一定要學習python?
※為什麼我會被Kubernetes「洗腦」?
※iPhoneX今秋停產:蘋果 iPhoneX為什麼會停產,iPhoneX停產原因
※iPhoneX或停產是真的嗎?iPhoneX為什麼要停產?
※python是什麼語言?現在學Python好找工作嗎?