非死book 開源安卓版 React Native,開發者可將相同代碼用于網頁和 iOS 應用開發

jopen 9年前發布 | 27K 次閱讀 React Native

非死book 創建了 React JavaScript 庫 ,這樣,非死book 的工程團隊就可以用相同的代碼給 iOS、安卓和網頁開發界面了。現在,非死book 通過開源 React“三部曲”中的最后一部分—— 安卓版 React Native (React Native For Android),將應用開發的超級力量賦予每個人。

非死book 先是在 2013 年將 React 開源 ,接著又在今年初的 F8 開發者大會上將 React Native 開源 。但是,Android 版本意味著,熟悉 React 技術的工程師將可以為每個主要平臺開發應用了。如此一來,創業公司和大型科技公司就不必像現在這樣擁有那么多工程師了,也不必再為招聘精通 iOS 和安卓開發技術的工程師而感到擔憂了——iOS 和安卓是兩種截然不同的代碼庫。反過來,這又可以幫助加快團隊開發新功能的步伐,進而縮短從 iOS 版發布到植入安卓平臺之間的時間。

今天,在一年一度的 @Scale 大會 上,非死book 宣布將 開源安卓版 React Native 。來自 非死book、推ter、谷歌、Box、Pinterest 和微軟等公司的 1800 名高管和工程師齊聚本次大會,就如何改善他們的工程和基礎設施進行合作。與會的公司們已總計對 4500 多個開源項目做出了貢獻。

為何選擇開源?

大家或許想知道,非死book 為何要送出一份像 React 這樣強大技術的禮物呢?畢竟,非死book 完全可以自己利用這項技術,在與其他社交網站競爭時在工程方面獲得優勢地位。對此,非死book 工程經理湯姆·奧基諾(Tom Occhino)給出了以下三個主要原因:

  1. 社區貢獻——“從功能到漏洞查找,開發者社區對我們公司的發展做出了重大貢獻。”
  2. 人才招聘——“人們確實有興趣學習像 非死book 等大平臺采用的技術。人們很高興加入打造這種技術的團隊中。”
  3. 吸引工程師加盟——“這讓有意加盟 非死book 的每一位工程師占據了先機,因為他們已經了解了我們的構架。”

基本上,非死book 通過開源得到的東西遠遠超過失去的東西,同時還顯示出它無私的一面,畢竟這種舉動與 非死book 連接世界的愿景相符。奧基諾說:“單憑 非死book 一家公司的力量無法開發所有的軟件。我們能做的最好的事情就是,向開發者提供工具,讓他們進一步推進這一使命。”

“一次學會,到處可用”

長期以來,跨平臺開發的“圣杯”始終是“一次編碼,到處運行”(code once, run anywhere),但是,由于網頁、iOS、安卓等平臺之間存在著重大不同,這一目標根本無法實現。但是,React 在三個平臺中植入了一個抽象層(level of abstraction),這樣,你只要一次學會 React,就可以到處編寫應用了。

舉例來說,今年早些時候 非死book 給 iOS 和安卓兩大平臺開發了一款原生 Ads Manage 應用,得益于 React 技術, 開發時間僅僅是之前預期的一半 。非死book 原本預計開發這款應用的時間為 18 個月,但它用時 5 個月開發出了 iOS 版應用,然后又在 3 個月內將其移植到安卓平臺。

這項技術還能讓 非死book 重拾“快速行動”(Move fast)的理念,這種理念還是在 非死book 只是一個完全基于網頁的平臺時提倡的,當時它不斷發布代碼,測試新功能。隨著 非死book 開始擁抱移動時代,它不得不對工程團隊做出分工,讓不同的專家從事網頁端、iOS 和安卓等三個平臺的應用開發。

非死book 工程經理奧利維亞·比肖普(Olivia Bishop)告訴我,沒有 React 技術,“應用很難快速迭代,因為每次你做出調整的時候,都必須重新編譯應用,將它放在設備上進行測試。”由于代碼可以重復利用,React 可以大大節省應用迭代時間。

一旦開發者社區熟悉了 React Native 的用法,它可以讓“精益創業”(lean startup)的理念更易于執行。所有開發者并不是犧牲跨平臺支持或是因為對現狀不滿而試水新的操作系統,相反,他們可以迅速看到應用的運行機制。當他們用 React 發現了有問題的東西后,也可以用它來改進 非死book 的體驗。

非死book 工程主管亞當·沃夫(Adam Woff)最后表示:“我將開源比作進化或腐蝕這樣的長期進程。隨著時間的推移,一定會獲得回報的——我們對開源的投資可以確保軟件保持相關性。”讓軟件始終留在一家公司,可以導致危險的迭代停滯。“隨著時間推移,這種固步自封的做法會破壞專屬軟件堆棧,對公司帶來傷害。”

翻譯:皓岳

非死book Open Sources React Native For Android So Devs Can Reuse Code Across Web And iOS

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!