成为 JavaScript 全栈工程师的 11 个阶段
开发商投资组合
去年我创建了一个清单,帮助你开启职业生涯,成为一名全栈开发者。我发现它们仍然有效,所以想在这里分享!
Paul Knulst 在 编程中• 6 分钟阅读
去年,我收到了不少留言,大多是刚毕业踏入编程世界的新人。他们问的问题大多是关于如何快速提升技能,如何成为全栈工程师,或者如何选择职业方向。
虽然我尝试逐一回复每个人,但我想结合自己的经验,创建一份如何成为全栈工程师的路线图,并与大家分享。
第 1 阶段 - HTML
在学习任何编程语言之前,你都应该学习基本的 HTML。W3Schools 的教程是一个不错的入门指南,它不仅涵盖了所有基础知识,还包含一些高级信息:点击此处
第 2 阶段 - CSS(Grid、Flex)
有了 HTML 知识,你还应该学习 CSS 来设计你的网站。W3Schools 也提供了一个不错的教程:点击此处
第 3 阶段 - JavaScript + DOM
现在是时候学习 JavaScript 了。JavaScript 是全球使用最广泛的编程语言之一。你可以参考W3Schools 的另一个教程来学习它。
此外,我还写了一篇文章来学习使用游戏化的高级 JavaScript。
- 在我的博客上:https://www.paulsblog.dev/learn-javascript-while-playing-games-gamify-your-learning/
- 在 Medium 上:https://medium.com/javascript-in-plain-english/learn-javascript-while-playing-games-gamify-your-learning-9f41d4d3dad9
第四阶段 - Node.js
Node.js 是一个基于 JavaScript 的强大平台,它建立在 Google Chrome 的 JavaScript V8 引擎之上,并提供事件驱动、非阻塞(异步)I/O 和跨平台运行时环境,用于使用 JavaScript 构建高度可扩展的服务器端应用程序。
首先在nodejs.dev上下载并安装适用于你操作系统的最新 Node 版本。这是你作为 JavaScript(TypeScript)开发者进一步发展所必需的。
之后,您应该查看他们的介绍以了解有关 Node.js 的一些基础知识。
在进入下一阶段之前,你应该熟悉 npm 生态系统。在开始使用 React 之前,请考虑回答以下问题:
- 什么是 NPM?
- 我怎样才能安装一些东西?
- 什么是 package.json
- 我需要包裹XX我该怎么办?
第五阶段 - React
如果您精通 JavaScript(也许还有 TypeScript),那么您应该学习 React,因为根据npmtrends.com的数据,它是使用最广泛的框架:
请记住:掌握 React 需要一些时间,因为它包含许多不同的概念,这些概念在开发过程中都变得很重要。
我个人的建议是在继续使用 MySQL 之前先逐步完成以下三个列表:
基础知识
- 理解 React
- 如何设置你的 DevEnv
- JSX
- 成分
- 状态
- 道具
- 列表/键
- 生命周期方法
高级 React 概念
- 造型
- 表单处理
- 数据处理
- 和解过程
- 钩子
- 自定义钩子
- 语境
掌握 React
- 延迟加载
- 门户
- 状态管理
- 路由
- 主题
- 模式
- 反模式
我在 dev.to 上发表的这篇文章也提供了成为 React 开发人员的链接
第六阶段-MySQL
掌握 JavaScript 和 React 来创建漂亮的网站后,下一步就是在这些网站中使用持久数据。通常,这是通过连接到 MySQL、PostgreSQL 或 SQLite 等数据库来实现的。
为了简单起见,您应该学习 MySQL 而不是 PostgreSQL!
作为开发人员,您必须熟悉 MySQL,因为它非常适合小型和大型应用程序(PostgreSQL 是 DBMS 的进步,但 MySQL 是基础知识)。
要学习 MySQL,您可以使用W3School 教程,它将教您所有基础知识,以了解您在不同应用程序中遇到的每个 MySQL 查询。
重要的是,你必须比查询更了解数据库设计,因为在未来的阶段,你无论如何都会使用一种帮助你处理查询的技术(ORM)。为此,你必须了解数据库规范化。如果你想使用关系数据库,这一点非常重要!
第七阶段-MongoDB
与 MySQL 不同,MongoDB 是一个面向文档的 NoSQL 数据库。它使用类似 JSON 的文档和可选的模式来存储数据。
熟悉 NoSQL 数据库设计并阅读并理解此内容。
第八阶段 - CRUD 模式
如果您正在处理持久数据,则必须了解 CRUD 模式。CRUD 代表创建、读取、更新、删除,描述了持久数据的四种基本操作。
在 Wikipedia 上阅读相关内容就足够了。
第九阶段 — ORM 和 ODM
ORM 代表对象关系映射;ODM 代表对象文档映射器。两者都是使用面向对象范式从数据库查询和操作数据的技术。
通常,当开发人员谈论 ORM 或 ODM 时,他们指的是实现其中任何一种(或两种)技术的库。
您应该学习以下支持两种数据库技术的至少一项:
- TypeOrm(SQL 和 NoSQL)
- Prisma(SQL 和 MongoDB)
- Mongoose(仅限 MongoDB)
- Typegoose(TypeScript 的 Mongoose)
- Knex.js(SQL)
- 续集(SQL)
就我个人而言,我建议学习TypeOrm和Prisma!
第十阶段 - 构建辅助项目以积累经验
现在您已经了解了编程语言、框架以及如何使用数据库,您可以开始创建一些项目。
这个阶段对于成为一名全栈开发人员非常重要,因为您在教程中永远不会遇到在自己的项目上工作时会遇到的实际问题。
以下是一些很酷的项目的想法:
目标追踪应用程序
一款追踪个人目标的简单应用。将目标保存在数据库中,并在前端以美观的方式展示。
克隆网站
寻找一个不错的网站,并尝试克隆它。复制其内容,并尝试推断其功能。然后尝试将其应用到你自己的网站上。
开发商组合
你应该创建一个非常重要的项目,那就是作品集。作品集是一个重要的网站,可以展现你自己。如果你申请工作,你会有一个美观的网站来展示你的技能或介绍自己。
第 11 阶段 - 部署你的副项目
最后一个阶段是将项目部署到服务器上。这个阶段也是必需的,因为作为一名全栈开发人员,你应该知道如何在生产环境中部署你的应用。
我建议你学习一下 Docker,以及如何用它来托管不同的网站。作为入门,你可以在这里查看我写的一篇 Docker 介绍。如果你已经熟悉 Docker,可以看看这篇文章,我解释了如何部署 Traefik(一个负载均衡器),它会为你将在服务器上部署的每项服务自动创建 SSL 证书。
如果您已经阅读并理解了这两篇文章,您可以查看这篇文章:
它描述了如何在已经运行 Traefik 的 Docker 环境中部署一个简单的网站。
恭喜,您可以称自己为全栈开发人员!
结束语
希望这些资源能够帮助您成为一名全栈开发人员。
另外,如果您有任何问题、想法或建议,请在下方写下来。我会尽可能解答。
写作一直是我的热情所在,能够帮助和激励他人让我感到很高兴。
本文最初发表在我的博客上,网址为https://www.paulsblog.dev/11-stages-to-become-a-javascript-full-stack-engineer/
欢迎通过我的博客、Medium、LinkedIn、Twitter和GitHub与我联系。
🙌 支持此内容
如果你喜欢这篇文章,请考虑支持我。你可以在社交媒体上分享,或者请我喝杯咖啡!任何支持都很重要!
此外,您还可以订阅我的新闻通讯,分享您对我内容的贡献。请访问贡献页面,了解所有(免费或付费)表达感谢的方式!
谢谢!🥰
摄影:Caspar Camille Rubin / Unsplash
鏂囩珷鏉ユ簮锛�https://dev.to/paulknulst/11-stages-to-become-a-javascript-full-stack-engineer-ngm