[ 一起学React系列 -- 0 ] React技术栈学习路线

news/2025/6/19 18:24:06

我相信点进来的同学都是冲着标题来的,当然本文也不会让各位失望。不过在正式介绍标题所述的内容之前,我们不妨先放下技术,一起回顾下自己做前端技术的心路历程。

前端之路

看多了众多的技术文章,可能早已经视觉疲劳。每天沉没在Coding的世界中,有时候真的需要像诗人一样将自己脱离出来放松一下身心,舒缓一口气...回首走过的路途、看过的风景、品过的茶酒以及爱过的一切。
如果可以的话,笔者想在这里分享下自己做前端一路走来的所感所想。不算什么高谈论阔、不算什么真知灼见,仅仅是所感所想。当然,我也希望大家也能将自己一路走来的所感所想写在文章下方,大家一起交流,一起分享彼此的心路历程。
笔者接触前端到现在已经快3年了,从一个前端小白到一个前端中白,中间拜读过很多大佬的文章、也有过很多的思考。
前端是个五彩缤纷的世界,技术更新迭代快到惊人,百家争鸣是现在的主流,这也是前端强盛生命力的来源之一。另外作为JavaScript的誓死追随者,笔者从接触JavaScript第一天开始就慢慢觉得:JavaScript真的可以为所欲为。不过从后来笔者基础到的事情证明,自己的想法是对的。据说我们常用的巨硬Office下一代将会使用JavaScript重写;现如今,JavaScript正在慢慢“入侵”社会的各个领域,从最本职的前端 --> 后端(NodeJs) --> 移动端(React-Native等) --> 桌面端(Chrome OS) --> 人工智能(TensorFlow.js) --> 3D(WebGL) --> 数据可视化(d3.js) --> VR 等等...JavaScript正以无法预知的速度在扩展,或许连JavaScrip之父(Brendan Eich)也不会想到他创造的语言竟然会如此精彩,毕竟他的初衷只是想用它处理一些简单的页面交互工作。同时这也是笔者坚定拥护JavaScript的根本原因,代码本就是艺术,用代码创造出来的事物都是艺术品
回到前端的话题继续聊,在笔者眼里前端世界有四个里程碑

Jquery

Jquery,真是前端界无人不知,无人不晓的JavaScript库(注意,不是框架)。Jquery为我们封装了很多我们日常开发中需要写的代码,如:DOM操作、样式处理、浏览器兼容、动画等等。Jquery的出现真可谓是前端界的福音,正与之宗旨所说:Write Less,Do More。据统计,目前世界上有46%(or more) 的项目使用了Jquery。正是因为其便捷、兼容、快速等特点赢得大家的放心。而且目前国内相当多的外包公司仍在使用Jquery。

NodeJS

2009年NodeJS的出现也是前端的一大壮举,为什么呢?因为它将JavaScript带入了后台服务领域而不仅仅局限于浏览器。自此,JavaScript可以做更多的事。最最重要的就属后台服务、构建技术。

AngularJs

同年,AngularJs也出现在前端的世界中,虽然它没起到改变前端的决定性作用,但是它的出现为后来前端框架起到了很多启示性的作用,包括其双向绑定、依赖注入、指令等等。

React

2013年React出现了(其实是正式开源),一款专注于UI的前端框架。当时脸书(FaceBook)是苦于那时候没有好用的前端框架因此就自己开发了React,后来就在前端界引发了轩然大波。在此引用runoob对React的特点的概概括:

  1. 声明式设计 −React采用声明范式,可以轻松描述应用。
  2. 高效 −React通过对DOM的模拟,最大限度地减少与DOM的交互。
  3. 灵活 −React可以与已知的库或框架很好地配合。
  4. JSX − JSX 是 JavaScript 语法的扩展。React 开发不一定使用 JSX ,但我们建议使用它。
  5. 组件 − 通过 React 构建组件,使得代码更加容易得到复用,能够很好的应用在大项目的开发中。
  6. 单向响应的数据流 − React 实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传统数据绑定更简单。

当然还不仅仅限于这些,最令笔者敬佩的是React的核心之一:diff算法,这是React高效渲染的发动机,可惜笔者对其没有深入研究,日后跟进。

心路感知

放眼现在的前端世界,如今前端框架多如牛毛、数不胜数,但总体看来仍是三足鼎立,Angular、Vue、React. 同时令笔者最为佩服的是Vue,它后来居上,可谓是吸取百家之长以相对最完美的姿态出现在大众眼前,一举获得大家的芳心,如今已风靡全世界。
写到这里,突然想起公司领导说过的一句话:“想做厉害的人,你必须要么比人懂的多,要么比人懂的深”。再结合目前前端的现状,笔者深深得觉得自己真的学不了那么多,与其学得多不如学得深一点。当然这仅仅是笔者个人主观意识。很长很长时间以来,笔者一直在迷茫,不知道该往哪儿走、该怎么走,很多问题困扰着自己无法得到合理解答,后来也慢慢想通了,何不专注于某一条路走下去呢?技术是无限的,精力是有限的,而且除了工作我们还有生活。
后来笔者就选择了React这条路,究竟是为什么其实笔者自己也不清楚,或许它是我第一认真学习的框架也或许它真的很优雅。

React技术栈学习路线

直到前段时间笔者的朋友给推荐了一个React Study Map,真是欣喜若狂也更加坚定了自己在React继续前进的想法。在这里也迫不及待得想分享给大家(所以这也是一片搬运文)。这是一个外国友人总结的一套React技术栈学习路线,先给传送门。
再附图:
图片描述

希望它能给正在学习React一点建议或者正在迷茫的朋友一点指向。同时在往后的很长一段时间里,笔者会从中挑选部分内容整理成文章分享给大家。让我们坚定得往前走,Keep Moving...


https://dhexx.cn/news/show-4242820.html

相关文章

吐血了,刚上班就这么忙

猪猪给我发来的 http://txt.post.mop.com/static/000/330/330.html 昨天临时受命做网站,从下午3点开始到今天的19点胜利完工,Oh yehh!明天参加不了simon组织的喝茶聚会了,有点可惜。

笛卡尔算法在数据库的使用

数据库笛卡尔算法的实现: 商品的类别表有2列四行,商品参数表有3列五行,所以经过笛卡尔运算得到5列二十行 直接利用mysql来实现效果: 建立数据库eshop1 实现笛卡尔算法: 结果:

更新应用程序块

http://www.cnblogs.com/tonyqus/archive/2005/02.html 技术网站:http://blog.blueidea.com/category/dotnet/转载于:https://www.cnblogs.com/battler/archive/2005/03/02/111560.html

c语言程序进行编译形成的二进制,c语言模拟试题四

1《C 语言程序设计》模拟试题(四)一、选择(20分)1.以下叙述中正确的是_________A)C 语言的源程序不必通过编译就可以直接运行B)C 语言中的每条可执行语句最终都将被转换成二进制的机器指令 C)C 源程序经编译形成的二进制代码可以直接运行 D)C 语言中的函…

spring-boot教程

Spring Boot系列文章

AE与C#入门笔记

http://www.cnblogs.com/e3e4/articles/3695214.html

快速准备(复制替换)一套新测试环境,CentOS7 MySQL相关配置

拿到一个新环境,需要找相关配置,我有一个办法,相对能比较快速地复制一套环境出来。 修改机器配置: virsh 相关几条命令,已完成,后续我再整理补充... 虚拟化相关,参考:https://www.cn…

我所喜欢的游戏,大家都来说说自己喜欢的:D

按照我玩游戏的历史来吧: 1、第一个游戏,TT打字游戏 TT打字中的Game,呵呵伴随我在Dos时代很久,那时候大一,去学校机房第一次用电脑,胡点乱搞把TT中的游戏搞出来, 很是兴奋,回来跟舍…

在c语言中将函数分为两类,C语言中函数的分类

在C语言中函数被分为两类,一类是系统提供的标准函数,又称库函数。标准函数由系统定义,在程序中可以直接调用,例如:printf(),scanf()等。另一类是用户自己定义的函数。用户自己定义函数要遵循一定的规则&…

设置更改root密码、连接mysql、mysql常用命令

一:设置更改root密码 (1)编辑 mysql主配置文件 my.cnf #vim /etc/my.cnf 在[mysqld]字段下添加参数 skip-grant 5.7版本下需要添加#skip-grant-tables(2)重启数据库服务 #service mysqld restart (3&#x…