[譯] Airbnb 在 React Native 上下的賭注(一):概述

Airbnb 中的 React Native

在 2016 年,咱們在 React Native 下了一個大賭注。兩年後,咱們準備與你們分享咱們的經驗並說明接下來的計劃。

多年之後,咱們仍然能夠在 Airstream 預訂一次會議前端

這是咱們系列博客文章中的第一篇,其中概述了咱們在 React Native 這方面的經驗以及 Airbnb 移動端之後會發展成什麼樣子。react

當 Airbnb 在 10 年前推出時,智能手機還處於萌芽階段。自那以來,智能手機已成爲駕馭平常生活的一個重要工具,尤爲是如今隨着愈來愈多的人開始周遊世界。做爲一個可以爲數百萬人提供新形式旅行的社區,擁有一個世界級的應用顯得相當重要。由於移動設備一般是旅行者們遠離家時的主要或惟一的通訊形式。android

自 2008 年咱們的前三名客人入住 Rausch 街以來,移動端用戶的預約量每一年增長數百萬。咱們的應用讓房東可以在行程中管理他們的房源,同時也爲旅客提供靈感,用手指輕輕一點就能發現新的地方和體驗。ios

爲了跟上移動應用的加速步伐,咱們已經將團隊擴展到 100 多名移動工程師,以實現新的體驗並改進現有的工做。git

在 React Native 上下賭注

咱們不斷評估新技術,使咱們可以改善客人和房東在使用 Airbnb 時的體驗,可以響應迅速的同時,保持良好的開發者體驗。在 2016 年,其中一項技術就是 React Native。那時候,咱們意識到移動端對咱們業務的重要性,可是卻沒有足夠的移動端工程師來完成咱們的目標。所以,咱們開始探索替代方案。咱們的網站主要是由 React 構建的。在 Airbnb,它一直個是很是有效和廣泛受歡迎的 Web 框架。所以,咱們將 React Native 視爲一個讓更多工程師接觸移動端開發的機會,而且也能夠利用它的跨平臺特性來更快地發佈代碼。github

當咱們最初決定開始投入 React Native 時,也知道存在一些風險。咱們須要爲代碼庫添加一個新的、快速迭代且未經驗證的平臺。該平臺有可能對代碼庫進行分割,而不是統一。咱們也知道,若是要使用 React Native,就想把它作好。咱們的目標是:後端

  1. 做爲一個組織,容許咱們快速迭代
  2. 保持原生的質量標準
  3. 爲移動端編寫一次產品代碼,而不是兩次
  4. 改善開發人員的體驗

咱們的經驗

在過去的兩年中,在這個實驗上下了很多苦功夫。咱們已經在應用中構建了一個使人難以置信的強大集成,實現了複雜的原生功能,如共享元素轉換,視差和地理位置以及與咱們現有的本地基礎架構(如網絡,實驗和國際化)橋接。react-native

咱們使用 React Native 爲 Airbnb 推出了一系列關鍵產品。React Native 使咱們可以推出更多體驗活動,這是 Airbnb 的一項全新業務,以及從評論到禮品卡的數十項新功能。這些功能都是在咱們沒有足夠的工程師來完成目標的時候構建的。markdown

不一樣的團隊對 React Native 都有豐富的經驗。React Native 有時被證實是一個極好的工具,但有時也會在技術和組織上提出挑戰。在本系列中,咱們詳細介紹了咱們的經驗以及接下來要作的事情。網絡

在第二部分,咱們列舉了 React Native 做爲一項技術的有效性和缺陷。

在第三部分,咱們列舉了與構建跨平臺移動團隊相關的一些組織挑戰。

在第四部分,咱們重點介紹了咱們今天與 React Native 的立場以及它在 Airbnb 中的將來。

在第五部分,咱們會談到從 React Native 中學到的最重要的知識,並利用它們使得原生表現地更好。

若是發現譯文存在錯誤或其餘須要改進的地方,歡迎到 掘金翻譯計劃 對譯文進行修改並 PR,也可得到相應獎勵積分。文章開頭的 本文永久連接 即爲本文在 GitHub 上的 MarkDown 連接。


掘金翻譯計劃 是一個翻譯優質互聯網技術文章的社區,文章來源爲 掘金 上的英文分享文章。內容覆蓋 AndroidiOS前端後端區塊鏈產品設計人工智能等領域,想要查看更多優質譯文請持續關注 掘金翻譯計劃官方微博知乎專欄

相關文章
相關標籤/搜索