原文链接:https://medium.com/airbnb-engineering/react-native-at-airbnb-f95aa460be1c
This is the first in a series of blog posts in which we outline our experience with React Native and what is next for mobile at Airbnb.
When Airbnb launched 10 years ago, smartphones were in their infancy. Since then, smartphones have become an essential tool to navigate our everyday lives, especially as more and more people travel around the globe. As a community that enables new forms of travel for millions of people, having a world-class app is crucial. Mobile devices are oftentimes their primary or only form of communication while away from home.
这是我们在一系列博客文章中的第一篇,其中我们概述了我们在React Native方面的经验以及Airbnb的移动应用程序。
10年前Airbnb推出时,智能手机还处于初级阶段。 从那时起,智能手机已成为驾驭日常生活的重要工具,特别是随着越来越多的人到世界各地旅行。 作为一个为数百万人提供新型旅行的社区,拥有世界级的应用程序至关重要。 移动设备通常是他们离开家时的主要或唯一的通信形式。
Since our first three guests stayed in Rausch Street in 2008, mobile usage has increased from zero to millions of bookings per year. Our apps give hosts the ability to manage their listings on the go and provide travelers with inspiration to discover new places and experiences right at their fingertips.
To keep up with the accelerated pace of mobile usage, we’ve grown our team to more than 100 mobile engineers to enable new experiences and improve existing ones.
自2008年我们的前三名用户进入Rausch街以来,移动用户数量每年从零增长到数百万。 我们的应用让房东能够在旅途中管理他们的房源,并为旅客提供灵感,以便在指尖发现新的地方和体验。为了跟上移动应用的加速步伐,我们已经将团队发展到100多名移动工程师,以实现新的体验并改进现有的体验。
Placing a Bet on React Native
进军React-native领域 (向RN投注)
We are continually evaluating new technologies to enable us to improve the experience of using Airbnb for guests and hosts, move quickly, and maintain a great developer experience. In 2016, one of those technologies was React Native. Back then, we recognized how important mobile was becoming to our business but simply didn’t have enough mobile engineers to reach our goals. As a result, we began to explore alternative options. Our website is built primarily with React. It has been a highly effective and universally liked web framework within Airbnb. Because of this, we saw React Native as an opportunity to open up mobile development to more engineers as well as ship code more quickly by leveraging its cross-platform nature.
我们不断评估新技术,使我们能够改善游客和房东使用Airbnb的用户体验,迅速发展并保持良好的开发者体验。 2016年,其中一项技术是React Native。 那时候,我们意识到移动开发对我们业务非常重要,但没有足够的移动开发工程师来实现我们的目标。 于是,我们开始探索替代方案。 我们的网站主要由React构建。 它一直是Airbnb内部非常有效和普遍受欢迎的Web框架。 因此,我们将React Native视作是可以让更多工程师参与到移动开发中,以及利用其跨平台特性能够更快地发布代码的一个机会。
When we began investing in React Native, we knew that there were risks. We were adding a new, fast-moving and unproven platform to our codebase that had the potential to fragment it instead of unifying it. We also knew that if we were going to invest in React Native, we wanted to do it right. Our goals with React Native were:
- Allow us to move Faster as an organization.
- Maintain the quality bar set by native.
- Write product code once for mobile instead of twice.
- Improve upon the developer experience.
当我们开始投资React-Native时,我们意识到这将会存在一定风险。我们正在添加一个新的、快速发展并且未被验证过的开发框架到我们的代码库中,该框架有可能更加的碎片化。我们也知道如果我们要继续使用React-native,我们的目标是:
- 使我们发展的更加迅速。
- 保证和原生一样的质量(该局理解的不是很到位,有看得懂原文的请斧正)。
- 编写一套代码为移动平台,而不是两套。
- 提高开发工程师的开发经验。
Our Experience
我们的经验
Over the past two years, that experiment turned into a serious effort. We have built an incredibly strong integration into our apps to enable complex native features such as shared element transitions, parallax, and geofencing as well as bridges to our existing native infrastructure such as networking, experimentation, and internationalization.
在过去的两年中,这个实验变成了一项认真的努力。 我们已经在我们的应用程序中建立了一个令人难以置信的强大集成,以实现复杂的本地功能,如shared element transitions,parallax和geofencing 以及与我们现有的本地基础架构(如网络,experimentation和国际化)的嫁接。
We have launched a number of critical products for Airbnb using React Native. React Native enabled us to launch Experiences, an entirely new business for Airbnb, as well as dozens of other features from reviews to gift cards. Many of these features were built at a time where we simply did not have enough native engineers to achieve our goals.
我们已经为使用React Native的Airbnb推出了许多关键产品。 React Native使我们能够推出Experiences,这是Airbnb的一项全新业务,以及从评论到礼品卡的其他几十项功能。 许多这些功能都是在我们没有足够的本地工程师来实现我们的目标的时候构建的。
Different teams had a wide range of experiences with React Native. React Native proved to be an incredible tool at times while posing technical and organizational challenges in others. In this series, we provide a detailed account of our experiences with it and what we’re doing next.
不同的团队对React Native有丰富的经验。 有时,React Native被证明是一种令人难以置信的工具,同时在其他人面临技术和组织方面的挑战。 在本系列中,我们详细介绍了我们的经验以及接下来的工作。
In part two, we enumerate what worked and what didn’t with React Native as a technology.
在第二部分,我们列举了React Native作为一项技术的工作原理和方法。
In part three, we enumerate some of the organizational challenges associated with building a cross-platform mobile team.
在第三部分,我们列举了与构建跨平台移动团队相关的一些挑战。
In part four, we highlight where we stand with React Native today and what its future at Airbnb looks like.
在第四部分,我们强调了我们今天与React Native的立场以及它在Airbnb中的未来
In part five, we take our top learnings from React Native and use them to make native even better.
在第五部分,我们从React-native中汲取经验,并使得native开发更棒。
仅做翻译,如有侵权,请即刻告知!!!