成为 JS Web 开发人员的 9 个通用步骤
1. HTML
2. CSS
3.编程基础
4. 选择你的工具
5. Node.js 和 NPM
6. JS 框架
7.编程原则和概念
8.探索世界
9. 开源
永不停歇
资源
这篇文章取自我的博客,所以一定要查看它以获取更多最新内容😉
编程并不总是指同一件事。这项活动的不同领域之间的差异可能非常巨大。人工智能、物联网、软件、驱动程序、Web🤯——许多程序员只专注于其中一个领域。但是,对于决定学习如何编程的自学初学者来说,这种多样性并不那么重要。他们通常会选择一门语言,学习它,然后……剩下的就成了历史。当然,这只是其中一种方式。有些人可以对整个情况有更深入的了解,并专门选择一个领域和编程语言来学习。这就是本文的目标受众。👍
今天,我们将通过9 个简单的步骤,探索成为一名专注于 JavaScript 的Web 开发者的途径。从一无所知的初学者,到专业的前端和后端程序员。“基于 JavaScript”意味着此列表以特定语言为中心,因此一些较小的步骤只是简要提及,而其他步骤则更为详细。此外,您还可以使用 PHP、Ruby 和其他一些语言进行 Web 开发。但这不是本文的重点。
顺便说一句,这正是我自学过程中实际遵循的路线。所以我可以保证它经过了充分的实践检验。😄 事不宜迟,我们开始吧! 👏
1. HTML
在深入探讨之前,我们先来回顾一下基础知识。HTML可以作为任何 Web 开发者旅程的序幕。
HTML 是一种标记语言,主要用于创建网站。其最新版本 5已于 2012 年成为一项现行标准。学习 HTML 只需掌握一些关于基本标签、元素、属性及其正确位置的知识即可。大多数现代 IDE 都提供自动补全功能,您只需掌握这些知识即可开始学习。
2. CSS
Web 开发者之旅的下一站应该是CSS。CSS是一种层叠样式表语言,它允许你为 HTML 元素设置样式,并使其更加精细、更具个性化。随着CSS 3 的正式发布,该语言允许你创建不同的布局、风格化元素、创建移动优先的网站、添加动画等等!许多开发者在处理一些可以用两种不同方式完成的特殊任务时,会争论 CSS 与 JS 的冲突。除此之外,CSS 是任何 Web 开发者工具集中的必备工具。
了解基本的 CSS 语法、它与 HTML 的集成方式以及一些常用属性应该足以帮助你迈出第一步。更高级的主题包括CSS 动画、媒体查询和灵活布局。嗯,这肯定还需要学习更多。😃
- CSS:来自“developer.mozilla.org”的层叠样式表;
- 来自“css-tricks.com”的CSS 技巧;
- 来自“hostinger.com”的CSS 备忘单;
- 来自“tutorialspoint.com”的CSS 教程;
3.编程基础
现在我们稍微放慢速度。学习JavaScript——从现在开始你的盟友、第一门编程语言,以及所有基于 JS 的 Web 开发中最重要的工具(显然😅)——可能是这份清单上最重要的一点。它贯穿始终,永无止境。😯
与 HTML 和 CSS 不同,JS 是一门真正的编程语言(脚本语言)。在学习过程中,你会接触到变量、函数、类、API 等概念。不过,稍微安慰一下,JS 真的是一种对初学者友好的语言……至少看起来是这样。随着你深入学习,你会发现越来越多的繁琐之处。🕳 不过,一如既往,基础很简单。只是到了后期,事情才开始变得有点……复杂。
总的来说,我可以向你保证,学习任何编程语言的语法都是最简单的任务。更难的是探索它的生态系统(我们稍后会讲到),同时也要学习如何使用这种语言来解决问题。这是编程中最难学的东西。有些东西并没有真正教过那么多——你必须自己去发现。一切究竟是如何协同工作的。你怎么可能用一组简单的变量、函数和其他结构来创造出这些令人难以置信的虚拟商品?我只能说,关于它,可以写一整篇文章甚至更多(如果你想要的话,在评论里联系我😂),但这可能还不够!🤯所以现在,我建议你尽可能多地编写代码,并尝试从头开始自己解决越来越难的问题。
- JavaScript——从“developer.mozilla.org”学习Web开发;
- 来自“tutorialspoint.com”的JavaScript 教程;
- 来自“scrimba.com”的JavaScript 简介;
- SoloLearn JavaScript 课程来自“sololearn.com”;
4. 选择你的工具
现在,您已经能够真正地编写代码,并且了解主流的 Web 语言,是时候选择您的工具了!在这里,您应该选择您的环境、IDE/代码编辑器和开发加速器!💯
构成 Web 开发人员环境的最重要因素是操作系统、代码编辑器、浏览器和可选工具。首先从操作系统开始,您显然有 3 个选择:Windows、Linux 和 MacOS。我知道这是个人喜好问题,但我会向所有 Web 开发人员推荐Linux。作为过去的长期 Windows 用户,我知道这个操作系统在编程方面可能会有点限制。此外,几乎所有服务器都使用 Linux,因此您在使用 Linux 计算机时会获得无缝的体验。是的,在 VM 中编程也不是最好的选择。我个人没有使用过 MacOS,但由于它有 Unix 根源,所以它似乎也是个不错的选择。
至于代码编辑器,你需要决定是想要一个功能齐全的 IDE、简单的文本编辑器,还是一个介于两者之间的编辑器。当然,有很多免费和付费的选择。最受欢迎的是VS Code(强烈推荐)和Atom。两者都提供了良好的扩展系统,因此你可以轻松使用一些额外的功能。至于付费工具,我们有Sublime Text和WebStorm(功能齐全的 IDE)。选择权在你手中!😉
最后,我们得到了一个浏览器和其他工具。浏览器显然是任何 Web 开发者的必备工具。值得在不同的浏览器上测试你的代码,看看它的表现如何。话虽如此,Safari 和 MS Edge 等浏览器受到操作系统的限制。
最后的工具部分其实非常丰富。这里包含了浏览器扩展、美化工具、linters和REPL等工具。记住,让你的环境感觉舒适才是你的最佳利益所在,所以一定要做好!👏
- JavaScript Linters来自“gomakethings.com”;
5. Node.js 和 NPM
学习了 JS 基础知识并选择了工具之后,就该开始编写代码了……甚至探索更多!Node.js是一种允许你使用 JS 编写后端/服务器任务的技术。它于 2009 年发布,极大地促进了 JS 编程的发展。它基于Chromium浏览器使用的 JavaScript 引擎V8,即使在非常艰巨的任务中也能使用 JS,并始终保持高性能。
当然,学习后端编程除了简单的运行时环境之外,还会接触到更多新事物。数据库、微服务、API和 SSR 等等,不一而足。总的来说,这个领域有很多值得探索的地方,尤其是在新的编程框架和库方面,例如为特定任务提供的可复用代码。为了更轻松地分发此类代码,Node.js 拥有自己的包管理器,称为NPM(Node 包管理器)。
借助 NPM,您只需使用非常简单的命令即可轻松访问数百万个库和框架包。随着 JS 和 Node.js 的发展,NPM 已成为最大的包注册中心。随之而来的是,基于 NPM 的 Web 开发已成为一种标准。
6. JS 框架
你已经熟悉了 JS,并且拥有了无数的 NPM 包,是时候全身心投入其中了!🔥 第一步,你应该尝试并学习一个用于UI 开发的JS 框架/库。最受欢迎的选择自然包括React、Vue和Angular。话虽如此,你还是应该对它们中的每一个都进行一些尝试,至少对它们有基本的了解和感受。然后,选择最适合你的,并深入学习if(haveTime) loop()
。😂
如果你对后端开发感兴趣,这里肯定有很多工具值得探索!其中最值得关注和推荐的是Express、Feathers和Koa。使用这些工具,你可以更快、更轻松地创建不同的 Web 应用和 API。
显然,还有更多库需要介绍。很多时候,你几乎肯定会找到适合你特定用例的好工具。而且,你可以将不同的工具一起使用!将像 React 这样的前端 UI 库与像 Express 这样的后端框架相结合,可以让你创造出前所未有的全新事物。这些包括 SSR 等等,这将引领我们进入下一步……
7.编程原则和概念
学习 JS 框架可以让你更好地了解编程原理和概念。现在正是深入探索它们的最佳时机。
面向对象编程 ( OOP )、函数式编程 ( FP )、不可变数据、测试驱动开发 ( TDD ) 等术语必不可少!你可能在学习 JS 基础知识时已经接触过这些术语。但仅仅了解这些还不够。你能做的最好的事情就是在实际代码中尝试每一种技术。当然,还有更多!
另外,学习 JS 时你应该听说过代码风格。如果你还没听说过,现在是时候学习如何编写简洁的代码了。这包括架构、代码拆分和代码格式化。保持代码的可读性始终很重要——无论是别人,还是几年后的你自己!😉
另一个值得尝试的好办法是学习一门新的编程语言——完全不同的语言,或者编译成 JS 的语言,比如TypeScript或ReasonML!只是提供一个思路。选择无穷无尽。🎉
8.探索世界
我猜这其实是这份清单上最通用的要点之一了。😂 副标题解释得够清楚了!你应该去探索一下精彩的编程世界!看看前面提到的要点——Node.js、框架、概念和原则——为了确保你没有错过太多内容,可以多看几遍。相信我——这会是一段有趣的旅程!所以,在最后一步之前一定要充分学习。
9. 开源
凭借你所有的知识和力量,是时候将它最终展现给世人了。🌐 而最好的方法就是创建你自己的开源项目!这将是对你技能的真正考验!从一个想法开始。确保创造出别人愿意使用的东西。然后,一步步完成正确的步骤——解决问题、架构规划、原型设计、编码、测试和发布。🚀
你的OSS(开源软件)项目可以为你的未来打开一个充满无限可能的世界。如果它发展壮大,你甚至可以期待更多!记住,想法和执行是最重要的步骤!即使你的项目不会取得巨大成功,也别担心。你已经走到了这一步,还会走得更远!永不放弃,坚持下去! 🔁
永不停歇
这可能是我迄今为止针对最复杂的主题列出的最通用的清单了。没有秘诀,也没有单一的方法让不同的人实现相同的目标。但这些你很可能已经听说过了。我不想重复已经说过的内容,我只想祝你学习编程愉快,探索这个有趣的 Web 开发和编程世界。😃 所以,永不止步,继续挖掘!还有无数的工具、概念和其他东西需要学习!
希望这份清单能帮你整理学习计划,至少能帮到你一点。记得看看资源部分列出的精彩路线图。它们不像我们这篇文章那样涵盖每个步骤,但能让你对下一个可能的目标有一个清晰的了解。现在,如果你已经是一名 Web 开发者,你对这份清单有什么看法?请在评论区留言,别忘了留下你的感想。如果你觉得值得,不妨把这篇文章分享给你认识的任何 Web 开发者新手!😉
与往常一样,请在 Twitter和我的 Facebook 页面上关注我,以获取更多最新内容,并查看我的个人博客!
资源
- 来自“github.com”的Web 开发人员路线图;
- 来自“github.com”的React 开发者路线图;
- 来自“github.com”的Vue 开发者路线图;