Facebook 开源安卓版 React Native,开发者可将相同代码用于网页和 iOS 应用开发
轉自:http://mt.sohu.com/20150915/n421177212.shtml
?
?
Facebook 創建了React Java 庫,這樣,Facebook 的工程團隊就可以用相同的代碼給iOS、安卓和網頁開發界面了。現在,Facebook 通過開源 React“三部曲”中的最后一部分—— 安卓版 React Native (React Native For Android),將應用開發的超級力量賦予每個人。
Facebook 先是在 2013 年將 React 開源,接著又在今年初的F8 開發者大會上將 React Native 開源。但是,Android 版本意味著,熟悉 React 技術的工程師將可以為每個主要平臺開發應用了。如此一來,創業公司和大型科技公司就不必像現在這樣擁有那么多工程師了,也不必再為招聘精通iOS 和安卓開發技術的工程師而感到擔憂了——iOS 和安卓是兩種截然不同的代碼庫。反過來,這又可以幫助加快團隊開發新功能的步伐,進而縮短從iOS 版發布到植入安卓平臺之間的時間。
今天,在一年一度的@Scale 大會上,Facebook 宣布將開源安卓版 React Native 。來自 Facebook、Twitter、谷歌、Box、Pinterest 和微軟等公司的 1800 名高管和工程師齊聚本次大會,就如何改善他們的工程和基礎設施進行合作。與會的公司們已總計對 4500 多個開源項目做出了貢獻。
為何選擇開源?
大家或許想知道,Facebook 為何要送出一份像 React 這樣強大技術的禮物呢?畢竟,Facebook 完全可以自己利用這項技術,在與其他社交網站競爭時在工程方面獲得優勢地位。對此,Facebook 工程經理湯姆·奧基諾(Tom Occhino)給出了以下三個主要原因:
社區貢獻——“從功能到漏洞查找,開發者社區對我們公司的發展做出了重大貢獻。” 人才招聘——“人們確實有興趣學習像 Facebook 等大平臺采用的技術。人們很高興加入打造這種技術的團隊中。” 吸引工程師加盟——“這讓有意加盟 Facebook 的每一位工程師占據了先機,因為他們已經了解了我們的構架。”
基本上,Facebook 通過開源得到的東西遠遠超過失去的東西,同時還顯示出它無私的一面,畢竟這種舉動與 Facebook 連接世界的愿景相符。奧基諾說:“單憑 Facebook 一家公司的力量無法開發所有的軟件。我們能做的最好的事情就是,向開發者提供工具,讓他們進一步推進這一使命。”
“一次學會,到處可用”
長期以來,跨平臺開發的“圣杯”始終是“一次編碼,到處運行”(code once, run anywhere),但是,由于網頁、iOS、安卓等平臺之間存在著重大不同,這一目標根本無法實現。但是,React 在三個平臺中植入了一個抽象層(level of abstraction),這樣,你只要一次學會 React,就可以到處編寫應用了。
舉例來說,今年早些時候 Facebook 給iOS 和安卓兩大平臺開發了一款原生 Ads Manage 應用,得益于 React 技術,開發時間僅僅是之前預期的一半。Facebook 原本預計開發這款應用的時間為 18 個月,但它用時 5 個月開發出了iOS 版應用,然后又在 3 個月內將其移植到安卓平臺。
這項技術還能讓 Facebook 重拾“快速行動”(Move fast)的理念,這種理念還是在 Facebook 只是一個完全基于網頁的平臺時提倡的,當時它不斷發布代碼,測試新功能。隨著 Facebook 開始擁抱移動時代,它不得不對工程團隊做出分工,讓不同的專家從事網頁端、iOS 和安卓等三個平臺的應用開發。
Facebook 工程經理奧利維亞·比肖普(Olivia Bishop)告訴我,沒有 React 技術,“應用很難快速迭代,因為每次你做出調整的時候,都必須重新編譯應用,將它放在設備上進行測試。”由于代碼可以重復利用,React 可以大大節省應用迭代時間。
一旦開發者社區熟悉了 React Native 的用法,它可以讓“精益創業”(lean startup)的理念更易于執行。所有開發者并不是犧牲跨平臺支持或是因為對現狀不滿而試水新的操作系統,相反,他們可以迅速看到應用的運行機制。當他們用 React 發現了有問題的東西后,也可以用它來改進 Facebook 的體驗。
Facebook 工程主管亞當·沃夫(Adam Woff)最后表示:“我將開源比作進化或腐蝕這樣的長期進程。隨著時間的推移,一定會獲得回報的——我們對開源的投資可以確保軟件保持相關性。”讓軟件始終留在一家公司,可以導致危險的迭代停滯。“隨著時間推移,這種固步自封的做法會破壞專屬軟件堆棧,對公司帶來傷害。”
翻譯:皓岳
Facebook Open Sources React Native For Android So Devs Can Reuse Code Across Web And iOS
總結
以上是生活随笔為你收集整理的Facebook 开源安卓版 React Native,开发者可将相同代码用于网页和 iOS 应用开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java读取XML文件的四种方式
- 下一篇: Apache 配置支持HTTPS的SSL