现在前端必须掌握nodejs技术吗?
你好,我是「前端雨爸」,希望我的回答对你有所帮助。
我的回答
现在已经 2020年了,前端开发肯定要会 Node.js 这门技术,(不然很大程度要被淘汰)
下面我简单说几方面的理由。
什么是 Node.js?
首先,Node.js是 Javascript 的运行时环境。
我们开发环境只要安装了node.exe,配置好环境,就能在Node.js中执行 Javascript 代码,这一切和在浏览器运行 99% 一样。就这一点,它不会对你带来任何学习成本。
第二,Node.js 基于 Chrome V8 引擎
通过 V8 引擎,给Node.js提供了一个高效的执行环境,因为它是由 C++ 所编写的,实现了 ECMAScript 和 WebAssembly,并能在 windows、macOs 等平台运行,甚至可以嵌入其他程序应用,让我们前端拥有全平台开发能力。比如 Electron 。
第三,Node.js的异步非阻塞特性
通过事件驱动机制,以及 Javascript 特有的单线程特性,让我们不必担心程序的阻塞问题,也不必接触令人头秃的多线程。
依靠Promise.js、async/await 让我门在异步编程中有非常好的体验。
会Node.js 会带来什么好处?
更快的学习新前端技术
现在无论什么前端技术都离不开Node.js 环境,对于主流的前端框架(Vue、React 等)一定会接触他们提供的脚手架,先不论 webpack 这技术,起码我们事先需要一个 Node.js环境。
总不能依靠 script 标签来异步加载吧?那将脱离前端现在的工程化体系。
更好的融入 npm 社区
依靠Node.js一人是无法像现在一样发展红火的,Node.js 离不开他的好兄弟-- npm(包管理器)。当我们有了Node.js 环境,那自然将有 npm 命令环境(就像 Java 里的 JDK、JRE 一样),我们可以在 npm 社区找到各式各样的优秀 Javascript 代码,为我们开发助力。
谋求更好的职业发展
如果你想找到一份不错的工作,通常你可以看到他们对于“前端工程师”的岗位要求有:会Node.js 这条。
现在不是工作不好找,而是我们可能太局限自身的发展,忽视了技术树的发展。
最后
现在是由Node.js带队的大前端发展方向,什么都有可能。虽然没有经历老一辈程序员使用 jQuery 的环境,但对于从事前端开发快 5 年的我来说,每天都充满着挑战。
希望以上这些亲身感悟能对各位有类似疑惑的同学有所帮助。