大家好,我是你们的 猫哥,那个不喜欢吃鱼、又不喜欢喵 的超级猫 ~

just-react

这本书的宗旨是打造一本严谨、易懂的 React 源码分析教程。

为了达到这个目标,在行文上,本书会遵循:

不预设观点 —— 所有观点来自 React 核心团队成员在公开场合的分享。

丰富的参考资料 —— 包括在线 Demo、文章、视频。

保持更新 —— 在 React 版本更新后会及时补充。当前版本 v17.0.0-alpha。

章节列表

理念篇

第一章 React理念

✅ React理念

✅ 老的React架构

✅ 新的React架构

✅ Fiber架构的心智模型

✅ Fiber架构的实现原理

✅ Fiber架构的工作原理

✅ 总结

第二章 前置知识

✅ 源码的文件结构

✅ 调试源码

✅ 深入理解JSX

架构篇

第三章 render 阶段

✅ 流程概览

✅ beginWork

✅ completeWork

第四章 commit 阶段

✅ 流程概览

✅ before mutation阶段

✅ mutation阶段

✅ layout阶段

实现篇

第五章 Diff 算法

✅ 概览

✅ 单节点Diff

✅ 多节点Diff

第六章 状态更新

✅ 流程概览

✅ 心智模型

✅ Update

✅ 深入理解优先级

✅ ReactDOM.render

✅ this.setState

第七章 Hooks

✅ Hooks理念

✅ 极简Hooks实现

✅ Hooks数据结构

✅ useState与useReducer

✅ useEffect

✅ useRef

✅ useMemo与useCallback

第八章 Concurrent Mode

✅ 概览

✅ Scheduler的原理与实现

✅ lane模型

???? 异步可中断更新

???? 高优任务打断机制

???? batchedUpdates

???? Suspense

https://github.com/BetaSu/just-react

最后

初级前端与高级前端之间,很多时候并不是懂的知识点有多难的差别,很大原因就是投入学习前端的时间、经验的差别,其实就是信息差。

如果有一个地方能又快又好的获得这些优质的前端信息,那么将会大大缩短从初级到高级的时间。

前端GitHub 就是这样一个仓库,能帮助前端开发人员节省时间的仓库!

公众号:前端GitHub,专注于挖掘优秀的前端开源项目,抹平你的前端信息不对称。

关于猫哥,大家可以看看我的年终总结 前端工程师的 2020 年终总结 - 乾坤未定,你我皆黑马。

不知不觉,已经写到第 30 期了呢,往期精文请看下方宝藏仓库,请慎入!

https://github.com/FrontEndGitHub/FrontEndGitHub

往期精文

  • B站收藏 12.5w+!GitHub 标星 6.6k+!这门神课拯救了我薄弱的计算机基础

  • Vue3 的学习教程汇总、源码解释项目、支持的 UI 组件库、优质实战项目

  • 程序员必备的 10 大 GitHub 仓库,前端占了 7 个!

微信搜 “前端GitHub”,回复 “电子书” 即可以获得 160 本前端精华书籍哦,猫哥 WX:CB834301747

推荐一个 React 技术揭秘的项目,自顶向下的 React 源码分析相关推荐

  1. android studio 项目源码_这个标星 2.3k+ 的项目带你 Android 源码分析从入门到放弃...

    上次写了一篇 Android 开发者的福利,介绍几款看源码的工具 ,这篇文章主要介绍了三款看 Android 源码的工具,后台有很多同学留言问,有没有分析源码的. 分析源码的文章也很多,但大多数文章不 ...

  2. react中context到底是如何传递的-源码分析

    react中使用context 基本要求就是 父组件中声明Parent.prototype.getChildContext 父组件中声明Parent.childContextType 子组件声明 Ch ...

  3. 仿爱奇艺视频,腾讯视频,搜狐视频首页推荐位轮播图(二)之SuperIndicator源码分析

    转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼:http://blog.csdn.net/hejjunlin/article/details/52510431 背景:仿爱奇艺视频,腾讯视频 ...

  4. server如何调用 thrift_一文带你了解 Thrift,一个可伸缩的跨语言 RPC 框架(pinpoint 源码分析系列)...

    Thrift 是什么研究分布式调用链工具pinpoint的时候,在源码里看到了Thrift相关的代码,所以来了兴趣,想研究研究这个框架.Thrift 目前是 Apache 的一个项目,但是它是由fac ...

  5. vs2008编译QT开源项目--太阳神三国杀源码分析(一) 项目编译及整体分析

    请参看 http://tieba.baidu.com/f?kz=1508964881 按照上面的网址教程,下载三国杀源码,swig工具,并下载最新的QT4.8.2 for vs2008.我本机已经安装 ...

  6. React Native 启动速度优化——Native 篇(内含源码分析)

    Web 开发有一个经典问题:「浏览器中从输入 URL 到页面渲染的这个过程中都发生了什么?」 据我考据这个问题起码有十年历史了.在日新月异学不动的前端圈子里,这个问题能一直被问,就是因为因为它是个非常 ...

  7. Spark技术内幕:Stage划分及提交源码分析

    当触发一个RDD的action后,以count为例,调用关系如下: org.apache.spark.rdd.RDD#count org.apache.spark.SparkContext#runJo ...

  8. vs2008编译QT开源项目--太阳神三国杀源码分析(四) 动画

    太阳神三国杀中,每当玩家出杀或吃桃子时,就会有一个动画效果,使界面非常生动绚丽.现在我们就分析一下QT中动画的原理,及实现方式,这里我们只分析吃桃子时的动画效果实现.由于三国杀有多个在线玩家同时游戏, ...

  9. 【华为云技术分享】深入浅出Sqoop之迁移过程源码分析

    本文从简单介绍了Sqoop作业执行时相关的类及方法.并将该过程与MapReduce的执行结合,分析数据如何从源端迁移到目的端. Sqoop作业执行过程 抛开MR的执行过程,Sqoop执行时用到的关键类 ...

最新文章

  1. cv2.getStructuringElement 学习
  2. java网络编程(二)
  3. 2015年07月04日
  4. 利用Python进行数据分析(1) 简单介绍
  5. elasticsearch基本查询二(英文分词)term和terms查询
  6. OJ1019: 公园门票
  7. windows 2008 r2 AD密码策略
  8. 从测试用例角度来看传统测试人员更专业?
  9. 分享168套HTML个人博客模板---总有一个是你想要的
  10. 解决 Office 2007/2010 安装错误:1402 安装程序无法打开注册表项 UNKNOWN\Components\“随机数字”
  11. macOS安装brew和ffmpeg下载m3u8
  12. win10如何打开摄像头_解决win10相机无法使用,相机崩溃问题
  13. Origin 如何输出高清图片
  14. CSS样式写出三角形
  15. matlab后退和前进的快捷键,MATLAB 常用操作命令和快捷键
  16. 一例较成功的国产PHP问卷调查系统
  17. 无法读取服务器php文件mime类型,PHP获得文件的mime type类型
  18. 不用再找了,SQLMap基础命令合集版来了
  19. 10大游戏显存占用率测试
  20. 阿里云、腾讯云centos7安装mysql

热门文章

  1. 数学之路(2)-数据分析-R基础(4)
  2. 解决win10系统中截图异常放大的问题
  3. php视频文件上传到服务器,上传和下载图片和视频到服务器
  4. pythn3随笔-enumerate()
  5. vb.net2019- 目录
  6. 【Python】4000字归纳总结 Pandas+Sklearn 带你做数据预处理
  7. 【数据结构】图解霍夫曼编码,看了就能懂
  8. 【CV】带你入门多目标跟踪(一)领域概述
  9. 邹伟博士出书啦!——《强化学习》从基础概念、核心原理到应用案例(文末赠书)...
  10. 推荐一款文件搜索神器Everything!