Facebook 開源安卓版 React Native
文章推薦指數: 80 %
Facebook 創建了 React JavaScript 庫,這樣,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)最後表示:「我將開源比作進化或腐蝕這樣的長期進程。
隨著時間的推移,一定會獲得回報的——我們對開源的投資可以確保軟體保持相關性。
」讓軟體始終留在一家公司,可以導致危險的疊代停滯。
「隨著時間推移,這種固步自封的做法會破壞專屬軟體堆棧,對公司帶來傷害。
」
微軟和 Linux :真正的浪漫還是有毒的愛情?
時不時的我們會讀到一個能讓你喝咖啡嗆到或者把熱拿鐵噴到你顯示器上的新聞故事。微軟最近宣布的對 Linux 的鐘愛就是這樣一個鮮明的例子。從常識來講,微軟和自由開源軟體(FOSS)運動就是恆久的敵...