一起走进React核心团队

Souleigh ✨ 等级 836 0 0
标签: reactJavascript

当我刚来FacebookReact团队工作时,我不确定接下来的工作会怎么样。表面看,React核心团队似乎很大!但事实证明,像Eli White和Sebastian McKenzie这样的人都在React Native团队。考虑加上那些维护开源库的维护者,比如Chakra UIFramer MotionReact核心团队人数似乎能填满整个体育场!但事实恰恰相反。React核心团队很小:

  • 塞巴斯蒂安·马克巴奇(Sebastian Markbage)

  • 卢娜·阮(Luna Ruan)

  • 丹·阿布拉莫夫(Dan Abramov)

  • 安德鲁·克拉克(Andrew Clark)

  • 布莱恩·沃恩(Brian Vaughn)

  • 里克·汉隆(Rick Hanlon)

  • 塞思·韦伯斯特(Seth Webster)

  • 克里斯汀·阿伯纳西(Christine Abernathy)和我自己。

虽然Dan是大多数人想到React时会想到的人,但Sebastian其实是仅存的“创始”团队成员之一。尽管Sebastian并未发明React,但他仍然是团队的“指南针” —— 他负责考虑每个新功能如何更好的融入。Dan和Andrew共同建立了Redux。Brian建立了React DevTools。里克(Rick)是一位高数的布道者。Luna负责Relay,并且是团队中唯一主修计算机科学的人!克里斯汀(Christine)与大学合作,立足React Native的教育工作。塞思是我们的团队经理。我负责文档和教材的工作。如果你深入了解这个团队,你会很惊讶的发现:Andrew是麦霸,Seth曾是个音乐人,Brian也在录歌(加分项:他的猫是非官方吉祥物。)

一起走进React核心团队

Rick热衷于参加社会活动,Dan会跳夜店style的舞。Christine看过漫威的每部电影,Luna和我都喜欢普洱茶。Sebastian则花了很多时间学习木工!在Facebook内部,React是庞大软件生态的一部分。这些项目不断相互影响,有开源也有闭源的。Facebook的工程文化就像解决方案的反应堆。React本身是内部的几个UI库之一,但他很快脱颖而出并开源。现在,尽管React启发了公司的其他UI框架,库和解决方案,但React核心团队的运作就像一个独立的精密实验室。尽管与标准机构的工作并不完全相同,但是在React团队的经历会让我想起W3C的情况。它几乎就像一个致力于使开发人员更轻松地编写一致、可响应、可重用UI的工作组。

一起走进React核心团队

当考虑将新的规范引入浏览器时,规范作者在完成API前需要很谨慎。每个API都是多个浏览器开发人员的承诺 —— 并且很可能是一个永久承诺。React团队会影响他们的工作,因此我们也需要很谨慎。一项功能的开发从深入的讨论和和谐的辩论开始。一旦功能完善,就会出现在Fackbook的“living lab”中进行测试。每个纳入RFC的特性都在经过社区测试前在内部经过测试,这能排除很多坏主意。尽管新的规范可能“破坏互联网惯例”(参考命途多舛的XHTML2),是否升级新版React完全处于开发者自愿,重点是易于迁移以及与现有库的兼容性。尽管有些特性可能难产,但长远看,仍可能取得成果。在15年,团队尝试使用worker提升性能。

结果并不理想 —— 数据传输的开销超出了预期。尽管实验失败,但他带来来很多启发 —— 如果可以将组件划分为在主线程上执行的组件和在工作线程上执行的组件,为什么它们不能在服务器和浏览器之间拆分执行?

五年后,这个想法构成了React团队几天前宣布的Server Components提议的基础。同样,在2018年,React团队与Prepack团队合作 —— 希望对组件进行编译时性能优化。这次合作耗时数月!最后,权衡利弊下,实验“失败了”。

一起走进React核心团队

但是,从那次实验中学到的东西为那一年晚些时候的Hooks设计提供了思路,它还显示仅靠编译时不足以优化性能。很多需要优化的代码都属于编译器可能不知道的动态条件。但是服务器可以!这也是两年后出现Server Components的另一种解读。当人们看到Dan上台演讲,或阅读Luna关于新JSX转换的release说明时,不会意识到:对于像Hooks这样的每一个完善的功能,能够成为release,在其背后还有许许多多特性甚至没到达RFC阶段。所有特性都必须等到完全准备就绪为止。

在此之前,只能给其他特性让路。在一个如此重视交付,并且交付的速度越来越快的行业,当你的承诺无法兑现时,这让人非常沮丧。但是这并不意味着没有进步:你有时间思考与计划,有时间实验与学习。即使暂时失败了,也会为成功的特性带来启发。即使你还没完成年初的预期工作,也要相信挫折和颠覆是常态,而不是例外,无论好坏,即使在React上也是如此。

React团队非常重视以正确的方式做正确的事。有时,这意味着无论是情感上还是技术上,都需要付出许多耐心。这也意味着向别人寻求帮助与建议,而不是试图独自做所有事情。这意味着要有信念,不能因为你没有新的特性产出,就意味着你没有提供价值。

收藏
评论区

相关推荐

25、react入门教程
25、react入门教程 25、react入门教程 0. React介绍 0.1 什么是React? React(有时称为React.js 或ReactJS)是一
做了N+1个企业项目之后, 我总结了这些React必备插件
为了提高大家开发 React 项目的效率, 笔者结合自己的实际工作经验, 汇总如下React项目常用插件. 1. 状态管理 Redux JavaScript 状
做了N+1个企业项目之后, 我总结了这些React必备插件
为了提高大家开发 React 项目的效率, 笔者结合自己的实际工作经验, 汇总如下React项目常用插件. 1. 状态管理 Redux JavaScript 状
Hook 规则 – React
Hook 规则 _Hook_ 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。 Hook 本质就是 JavaScript 函数,但是在使用它时需要遵循两条规则。我们提供了一个 linter 插件(https://www.npmjs.com/package/
2020前端面试系列之JSX是什么
**前言** 众所周知React Native开发中,页面View书写布局采用了React 的JSX语法,而在ReactNative面试中可能会遇到有关JSX相关的面试题,今天和大家分享有关JSX的知识,为你的面试助一臂之力。 **JSX的定义** JSX到底是什么?我们先看看\[React官网\](https://reactjs.org/docs/g
2020前端面试系列之JSX是什么
**前言** 众所周知React Native开发中,页面View书写布局采用了React 的JSX语法,而在ReactNative面试中可能会遇到有关JSX相关的面试题,今天和大家分享有关JSX的知识,为你的面试助一臂之力。 **JSX的定义** JSX到底是什么?我们先看看\[React官网\](https://reactjs.org/docs/g
Angular React Vue我应该选择什么?
2017 年比较 Angular、React、Vue 三剑客 ============================== 为 web 应用选择 JavaScript 开发框架是一件很费脑筋的事。现如今 [Angular](https://www.oschina.net/action/GoToLink?url=https%3A%2F%2Flink.juej
Electron整合React使用搭建开发环境
Electron整合React使用搭建开发环境 ----------------------- **博客说明** > 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! #### 简介 用于构建用户界面的 JavaScript 库 #### 步骤 ##### 首先创建React
React Developers的10个超实用神奇工具
![](https://oscimg.oschina.net/oscnet/be7e96e371213baf084f2018a5e0ecd1d6e.jpg) ![](https://oscimg.oschina.net/oscnet/d1f601c7e7175b985b1000f935f5e3191f4.jpg) React是一个用于构建用户界面的Jav
React Native第三方组件和示例链接
以下是React Native的链接,有需要第三方组件或者示例的小伙伴可以收藏一下 01、React Native之Tab-View:https://js.coach/react-native/react-native-tab-view 02、React Native之正在加载Loading条:https://js.coach/react-native/
React Router 4.x 开发,这些雷区我们都帮你踩过了
前言 -- 在前端框架层出不穷的今天,React 以其虚拟 DOM 、组件化开发思想等特性迅速占据了主流位置,成为前端开发工程师热衷的 Javascript 库。作为 React 体系中的重要组成部分:React Router 也成为开发者首选的路由库,其主要功能是通过管理 url 实现组件的切换和状态的变化。 正文 -- 在 React Router
React 入门实例教程
作者: 阮一峰 日期: 2015年3月31日 现在最热门的前端框架,毫无疑问是 React 。 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑。 React 起源于 Facebook 的内部项目,因为该公司对市场上所有 Ja
React 第一个小游戏(井字棋)知识关键点
**1、React是一个声明式,高效且灵活的用于构建用户界面的JavaScript库** **通过使用组件来告诉React我们希望在屏幕上看到什么。当数据发生变化时,React会高效的更新并重新渲染我们的组件** **2、** **render返回了一个React元素,这是一种对渲染内容的轻量级描述。大多数的React开发者使用了一种名为"JSX"的特
React前端开发入门与实战
**阿里云大学:[React前端开发入门与实战](https://www.oschina.net/action/GoToLink?url=http%3A%2F%2Fclick.aliyun.com%2Fm%2F1000010022%2F)** 本课程主要讲解React的基础使用技巧及实战案例。 React 是一个用于构建用户界面的 JavaScript
React学习笔记
**React 是一个用于构建用户界面的 JAVASCRIPT 库。React 主要用于构建UI,很多人认为 React 是 MVC 中的 V(视图)。React 起源于 Facebook 的内部项目,用来架设 Instagram 的网站,并于 2013 年 5 月开源。React 拥有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和使用它。** !