65 lines
6.7 KiB
Markdown
65 lines
6.7 KiB
Markdown
# 总结与展望|新架构探索之旅,马上开始
|
||
|
||
你好,我是蒋宏伟。
|
||
|
||
历经两个多月,恭喜你已经完成了核心基础篇、社区生态篇和基础设施建设篇的学习。
|
||
|
||
在这三部分中,我们不仅学习了入门必备的 React 基础、 React Native 应用的样式布局、核心组件和本地调试,并通过 React Native NTF 首页的开发实战帮你把这些知识给用了起来。
|
||
|
||
我们还学习了搭建 React Native 应用必备的导航、动画、手势、状态管理和线上监控,在搭建大型的线上应用时,这些从来自 React Native 生态的第三方工具和最佳实践,能帮上你不少忙。
|
||
|
||
而且,我们还学习了搭建 React Native 基础设施的关键要点,包括如何搭建 React Native 混合应用、热更新、拆包和性能优化,相信这些偏基建的知识能够帮你在团队中大放异彩。
|
||
|
||
掌握好这些知识之后,你就已经具备应对日常开发业务和团队基建的能力了。
|
||
|
||
不过,如果把这个课程的学习比喻成游戏里的升级打怪,那你已经度过了新手村,也熬过了应用实战的难关,来到了一片全新的大陆面前。
|
||
|
||
如果你还想在React Native上持续精进、走得更远,那我建议你继续跟随我们这门课的“步伐”,以新架构为核心,继续探索React Native的底层原理和前沿应用。
|
||
|
||
## 用“新架构”打造你的“技术长板”
|
||
|
||
为什么要这么做呢?因为**我们要打造自己的“技术长板”**。
|
||
|
||
现代知识体系就是一棵茂密的大树,没有人能够窥其全貌。技术领域也是如此,不同领域之间的知识,差别很大,没有人能同时精通前端、后端和算法。即便在同一个岗位上,大家要掌握的技能也是差距也是很大,toB 和 toC 要求不一样,做业务和做基建的要求也不一样。
|
||
|
||
在职业生涯中,我们不需要像学生时代一般,要求自己样样精通,你只需要专注一个方向,并在这个方向上打造一块足够长的长板,弥补所在团队的短板,就可以创造更大的价值。
|
||
|
||
我举个我自己的例子。我在极客时间学习了很多课程,除了前端领域的课程外,我学习过 iOS、浏览器、Linux 的课程,还学习过 Redis、MySQL、ElasticSearch、分布式技术、数学算法等等。相对于专攻这些领域的老师而言,我只能算学了个皮毛,这些技术领域都是我的短板。我学习的目的,并不是要成为这些方面的专家,也不是为了补全我的技术短板,而是为了工作中能更好地和小伙伴们合作。
|
||
|
||
在非前端领域,我会找团队中的这些领域的高手帮忙。而在前端领域,特别是 React Native 领域,大家遇到相关问题,大家就会找我帮忙,因为前端领域和 React Native 领域是我的技术长板。所以,你也可以把 React Native 领域打造成你的技术长板,成为你团队中最擅长 React Native 的人。
|
||
|
||
**而打造技术长板的秘诀,要么是你能解决别人解决不了的问题,要么就是你能把业内的技术前沿引入团队应用起来。**
|
||
|
||
解决别人解决不了的问题,考验的是你的**技术深度**。日常工作中,我们遇到大部分问题,都可以通过搜索引擎直接搜到答案,但总有一些问题是没有直接答案的,这就要求你必须对相关技术的原理有所了解,并加以分析。
|
||
|
||
我们拿 React Native 瀑布流举例,你用搜索引擎就能搜到一些可以直接使用的 ScrollView 瀑布流方案。在一些对性能要求不高、非无限列表的场景中,业内的方案就是你要的答案。但是,对于高性能的无限列表,搜索引擎是给不了你答案的,这时候怎么办?你必须要了解瀑布流的原理,然后基于原理对业内方案进行改造,才能解决问题。
|
||
|
||
这时候,高性能瀑布流,就是你能解决,而别人不能解决的问题。
|
||
|
||
另一个方面,把技术前沿在团队落地应用,考验的是你**对技术的敏感度**。雷军有句话说,“站在风口上,猪都能飞起来”,你只有时刻关注着技术的前沿,才能发现技术的风口。在现在这个时间点上,React Native 新架构本身就是一个技术前沿,现在新架构还处于预览版,除了 Facebook,几乎没有团队有新架构的应用落地,能提前把新架构落地应用起来,就很厉害了。
|
||
|
||
除此之外,React Native Skia 自绘引擎、React Native SSR 服务端渲染、React Native WishList 原生高性能列表等前沿技术,也是我重点关注的方向。这些前沿方向是不是技术风口,能否得到大规模应用,现在下结论还太早。但我知道,如果不去提前了解,等到大家都用上你才开始用,你就永远赶不上风口,也很难抓住技术红利带来的机会。
|
||
|
||
## 新架构的学习具体怎么安排?
|
||
|
||
正如我在开篇词和你承诺的一样,在接下来的**1年**里,我还会以**每月一更**的频率,带你持续跟踪 React Native 新架构的最新进展,这12篇的内容主要分为React Native新架构的原理解析和最新应用两大模块。
|
||
|
||
**在React Native 新架构原理篇中,我们会聚焦技术的深度**,包括:
|
||
|
||
* React Native 架构与 Flutter、小程序架构的区别;
|
||
* React Native 中 JavaScript 是如何与 Native 进行通信的;
|
||
* React18 带来的 Concurrent 是如何做到“可中断”渲染的;
|
||
* 新架构中的 Fabric 组件、TurboModule 接口又是如何工作的;
|
||
* 阅读 React Native 新架构的源码应该如何入手。
|
||
|
||
**在React Native 新架构应用篇中,我们会聚焦技术应用的前沿**,包括:
|
||
|
||
* React Native Skia 自绘引擎的最近进展与应用;
|
||
* React Native SSR 服务端渲染方案究竟是否可行;
|
||
* React Native WishList 原生高性能列表的工作原理;
|
||
* React Native 新架构的升级迁移有哪些注意事项。
|
||
|
||
不过,此时此刻,动态更新的内容还没完全定型,我们可以一起来设计剩余的内容。**欢迎你把想要学习的内容写在评论区、[交流群](https://jinshuju.net/f/Yd5WEw),或者[这个调查问卷](https://jinshuju.net/f/L6gPf2)中,我们一起来设计剩下的内容**。常规更新阶段的结束并不是我们学习的终点,衷心邀请你和我一起完成这场“长跑”,在接下来的学习中,深入探索 React Native 新架构的新技术和新应用,抓住技术红利!
|
||
|
||
这里先预告一下,接下来动态更新阶段的第一篇文章将在**7月1日**更新,我们会通过对比学习的方法,介绍 React Native 新架构和 Flutter、小程序架构的区别,一定要记得回来学习呀,我也会在[交流群](https://jinshuju.net/f/Yd5WEw)里通知你的!
|
||
|