基础知识 不论你学习哪个框架,这些基础知识都是必须的,即HTML、CSS和JavaScript,这三者是Web开发的三大支柱。HTMLHTML是第一根支柱,是Web开发者最重要的技能,它提供了网页的结构。学习HTML可以参考Udemy上的《Build Responsive Real World Websites with HTML5 and CSS3 》(http://bit.ly/2DCAqNE)这门课。CSSCSS是Web开发的第二根支柱,用于给网页提供漂亮的样式。学习CSS可以参考这个免费的课程(http://www.java67.com/2018/03/top-5-free-courses-to-learn-web-development.html)。JavaScript这是Web开发的第三根支柱,有了JavaScript网页才能交互。它也是React框架的基础,所以在学习React之前必须掌握JavaScript。从零开始学习JavaScript可以参加《The Complete JavaScript Course 2020: Build Real Projects!》(http://bit.ly/2DAthxz)这门课程。此外,你也可以参加一门综合课程,一起学习这三门技术。比如Colt Steele的《The Web Developer Bootcamp 》(https://www.udemy.com/course/the-web-developer-bootcamp/),这门课会教你成为Web开发者所需的一切技能。
通用开发技能 不论你是前端开发者还是后端开发者,甚至是全栈工程师,你都必须了解一些通用的开发技能,才能在程序员的世界里如鱼得水。2.1 学习Git时至2020年,Git是必须掌握的技术。在GitHub上尝试建立几个代码仓库,并与其他分分享代码,学习怎样从Github上下载代码到你的IDE中。如果你想学习,可以尝试这门课程《Git Complete: The definitive, step-by-step guide to Git》(http://bit.ly/2C0O0cH)。2.2 理解HTTP(S)协议如果想成为Web开发者,那么必须理解并掌握HTTP协议。我并非让你去阅读HTTP标准,而是说至少要熟悉常见的HTTP请求,如GET、POST、PUT、PATCH、DELETE、OPTIONS,以及HTTP/HTTPS的基本工作原理。2.3 学习终端命令尽管对于前端开发来说,学习Linux或终端命令并不是必须的,但我强烈建议你熟悉终端命令,并配置好你的shell(如bash、zsh、csh)等。如果你要学习终端命令和bash,我建议你参加Udemy上的《Linux Command Line Basics》(http://bit.ly/2QJoTzn)这门课程。2.4 算法与数据结构这也是React开发者并不一定需要的基础编程技能,但绝对是成为程序员的必经之路。要学习算法和数据结构,你需要阅读书籍,或者参加优秀的课程,比如《Algorithm and Data Structure part 1 and 2》(https://www.pluralsight.com/courses/ads-part1)。如果你更喜欢读书,下面这10本算法书(http://www.java67.com/2015/09/top-10-algorithm-books-every-programmer-read-learn.html)是每个开发者都应该阅读的。
包管理器 学习路线图中提到了许多包管理器,但你不需要学习所有工具,只需要学习npm和webpack就足够了。等你对Web开发和React的生态系统有了更多理解之后,可以探索一下其他工具。如果想学习Webpack,那么可以从《Webpack 2: The Complete Developer’s Guide》(https://www.udemy.com/course/webpack-2-the-complete-developers-guide/)着手。了解一些样式也没有坏处。尽管学习路线图提到了许多东西,如CSS预处理器、CSS框架、CSS架构和CSS in JS等。Javin建议,你至少需要学习Bootstrap,这是最重要的CSS框架。如果需要课程,可以参加《Bootstrap 4 From Scratch With 5 Projects》(https://www.udemy.com/course/bootstrap-4-from-scratch-with-5-projects/)。学习Bootstrap后,你还可以更进一步学习Materialize或Material UI。
Stephen Grider的《The Complete React Native and Redux》(https://www.udemy.com/course/the-complete-react-native-and-redux-course/)课程能够教你怎样快速构建React Native应用程序!