如何学习Fullstack开发。图表中的路线图

暗影恶魔
• 阅读 2099

你是否应该专注于全栈?"_。

如果你想把学习作为你的职业,请关注全栈。

全栈开发人员将不断发展的软件世界视为机会,而不是威胁。他们利用现代语言和新框架。他们不断发展自己的各种技能。他们就像技术本身一样前沿。

全栈开发人员能够适应。每个公司都有一个独特的堆栈,在前端和/或后端有不同的挑战。因此,应用多样化技能组合的能力使得全栈开发人员真正有价值。

最后,全栈开发人员利用了软件中最令人兴奋的部分:探索未知。如果你第一百次都在编码相同的解决方案,工作就会很无聊。但全栈开发者永远有机会深入到新的问题空间。


如果你是一个新人,你从哪里开始?

本文中的图表追踪了你如何成为一名全栈开发者。它列出了你需要学习的技术。请注意,时间估计是基于个人经验,以及我的同事的经验。另外,估计值假设你每天投入2-3个小时来学习。如果你可以投入更多或更少的时间,请调整估计值。

即使你很有经验,你也会发现这个图表很有用。看看你的落脚点并跟踪你的进度。无论是哪种方式,无论是新手还是有经验的人,在图表结束时,都可以认为自己是一个全栈开发者。🏆

前端(约5个月)

HTML/CSS(1周以上)

从学习网络的构件开始。你必须学习超文本标记语言(HTML)。它是用来构建网站的语法。幸运的是,它是列表中较快学会的技术之一。

接下来,你有层叠样式表(CSS)。学习这个主要是通过实验来完成。一旦你学会了基础知识,包括flexbox,就不要花太多时间进一步挖掘。你可以在其他项目中必要的时候学习其他的CSS细节。

JavaScript (1 month+)

如何学习Fullstack开发。图表中的路线图

你的很多时间将被用来学习JavaScript编程语言。JavaScript可以让你的网站变成动态的网络应用。

JavaScript是一个必不可少的检查点。幸运的是,有大量的资源可以用来加紧学习JavaScript。但仍然要注意专注于基础知识。将中级和高级概念留到以后再学。随着学习的深入,它们会变得不那么混乱/令人沮丧。

如何学习Fullstack开发。图表中的路线图

框架(2个月以上)

当你使用JavaScript的势头越来越好的时候,请学习一个JS框架。一个框架可以让你重用常用功能,更快地实现大型应用。

有几个选择。React,Angular,Vue,等等。在我看来,要学的是React.js.,它既对初学者友好,又受到很多有经验的开发者的喜爱。

这并不是说你应该完全忽略Angular和Vue。至少要读懂它们,知道它们与React的区别。甚至做一两个教程。

但你的时间是一种资源。我会把大部分时间用在React上。

如何学习Fullstack开发。图表中的路线图

相关的前端概念(1个月以上)

测试(2周以上)

毋庸置疑,可靠的软件公司都会测试他们的代码。因此,一个全栈开发人员应该熟悉测试实践和库。既然你懂JavaScript和React,那么Jest和Enzyme就是不错的选择。

Redux (2 weeks+)

如何学习Fullstack开发。图表中的路线图

如果你在学习React,就无法避免Redux。的确,它们是不同的概念。React是呈现层。Redux管理的是内部数据。然而,将Redux与React一起应用已经成为业界的标准。

如何学习Fullstack开发。图表中的路线图

相关软件概念(约1个月)

尽量将以下概念尽快融入到学习过程中。

HTTP和客户端-服务器架构(2周以上)

一个全栈开发人员应该知道数据是如何在万维网上进行通信的。在HTTP中,函数遵循请求和响应模式。它是这样的。一台计算机作为客户端。客户端使用Web浏览器向服务器发送HTTP请求。服务器,也就是另一台计算机,用HTML和CSS等资源来响应客户端。

我建议建立一个向公共API发出请求的项目,让你对HTTP脏手。

Git (1 week+)

如何学习Fullstack开发。图表中的路线图

尽快学习Git。Git是一个版本控制系统,用于跟踪仓库(软件项目)中的变化。你可以把它看成是有版本的Google Drive。你可以与他人共享仓库。文件有多个贡献者。但在Git中,你可以拥有项目仓库的分支,用于替代版本。Commits 记录了添加、更新或删除文件的确切时间。而这仅仅是它功能的开始(小贴士:git reflog是一个秘密武器)。

此外,其他软件工程师和招聘人员也会希望在Github上看到你的作品。

后台(约3个月)

Node.js(1个月以上)

利用你的JavaScript经验,在后端探索Node.js。将其与 Express.js 中间件一起使用,构建您自己的 API。Node.js在基于聊天的应用和流媒体方面大放异彩。利用这些优势,尝试构建一个Facebook Messenger/WhatsApp克隆。

就像你第一次接触JavaScript一样,Node.js会显得很庞大。有大量的资源是很好的。但如果你不知道从哪里开始就不行了。专注于基础教程,自然而然地提升水平。

SQL和关系型数据库(1.5个月以上)

你不能忽视SQL和关系模型。后台的一个基本方面是数据存储。结构化查询语言(SQL)是使用最广泛的语言,以协调如何读取、写入和更新数据。学习关系模型。这是MySQL、PostgreSQL和Oracle等工业标准关系数据库系统背后的概念。

当你在学习Node.js的时候,你会遇到很多MongoDB的教程。MongoDB是一个NoSQL数据库--关系型数据库系统的替代品。小心,只关注MongoDB可能很诱人。现在,了解一下NoSQL数据库和语言是很好的。也要了解它们的优势/劣势。但不要跳过SQL,也不要跳过关系模型。它们在行业中的应用如此广泛。你最终会遇到它们。

如何学习Fullstack开发。图表中的路线图

🍾🍾🏆🍾🍾

就这样,你已经完成了图表!开香槟吧! 派对就像你5岁生日时一样热闹!那么,在这种情况下,香槟可能是不合适的... ...

无论如何,蛋糕来一块吃起来。你是一个全栈开发者。

但是,它并没有停止在这里... ...

超越

一个将所有内容整合在一起的项目(2周以上)

你有全栈技术。希望你一直在积累作品集。但是为了帮助你,真的很难在网上找到一个将所有全栈概念联系在一起的教程。你得自己去拼凑一个项目。

所以我建立了一个课程来解决这个问题。到最后,你的作品集里会有一个全栈项目。其重点是React.js、Redux、Node.js和PostgreSQL。它还关注那些能让你脱颖而出的小细节:代码设计的最佳实践,以及方法命名。

Master Full-Stack Development | Node, SQL, React, and More

如何学习Fullstack开发。图表中的路线图

计算机科学(5个月以上)

一个全栈开发人员也应该懂计算机科学。是的,从时间估算上看,大学四年的时间确实可以归结为五个月。那是不是说拿到CS学位就没有意义了呢?当然不是,获得计算机科学学位是一项巨大的投资。你可以和许多聪明的人建立联系。而且你还可以探索你可能感兴趣的其他工程课题。

但那些在行业中立即适用的东西--数据结构和算法、操作系统和软件开发原理--可以在高度集中的五个月内完成。

我的很多同事都是非CS专业毕业的(有的甚至是非科学专业)。他们要么自学,要么上过训练营。

其他语言/技术全栈(正在进行)

正如一开始提到的,全栈开发者在未知中茁壮成长。学习的过程是持续的。一旦你在一种技术上变得很危险,是时候把它的竞争对手/替代品添加到你的工具箱中了。用另一个JS框架(如Vue.js)构建一两个项目。开始探索NoSQL数据库,比如Redis。

真正让自己脱颖而出的方法是了解每种技术的优势/劣势。知道什么时候最好使用Node.js,与什么时候应该使用Go或Scala。

了解语言的哪些部分值得称赞。_知道哪些部分值得抱怨。

最终,如果你想把学习作为你的职业,请专注于全栈开发。


David是旧金山Zendesk的全栈开发人员和软件工程师。他喜欢制作教育内容。他有17门课程,有来自世界各地的约20万名学生。看看他们吧 https://www.udemy.com/user/54cd8dd54e49b/

Highlights:

Master Full-Stack Development | Node, SQL, React, and More

Build a Blockchain and a Cryptocurrency from Scratch

React — Mastering Test and Behavior Driven Development

Also, feel free to connect with David by finding his social media links on davidtkatz.com

点赞
收藏
评论区
推荐文章

暂无数据

暗影恶魔
暗影恶魔
Lv1
汉月垂乡泪,胡沙费马蹄。
文章
2
粉丝
0
获赞
0