从前端到后端的学习之路 -- js和node.js的不同

前言

每一个前端必须掌握的一项技能就是javascript,这是每个前端吃饭的家伙,但是这丝毫不影响非常多的后端认为这是一个玩具语言,难当重任,就算有了服务端的js:node.js,也丝毫没有影响这一点
于是乎,搜索node.js出现的第一条可以说是非常有趣味性了…
在这里插入图片描述
不得不说还是挺劝退的…

但是业务做得多了,自然而然着会想去钻研一些新的东西,毕竟 来都来了不是吗

在过了这劝退的第一道坎后,你会发现node.js还是有一些可取之处的
npm上非常丰富的各种package
在高并发上优秀的表现
当然还有一条对前端开发者而言很重要的原因:学习成本
身为前端开发者,js想必已是玩的滚瓜烂熟,使用node.js做后端,只是逻辑上的变化,语法上的变化并不大,学习成本没那么高
但是如果是换一个语言,那么首先需要学习,习惯他的语法,而后才是处理后端的一些逻辑,学习成本会比node.js高出很多

于是乎,在思考再三后,终于是决定要从node.js开始,一窥后端的世界

js是什么

js作为前端开发者想必都已经非常熟悉,他是运行在浏览器的脚本语言,使用ECMAScript规范,外加一些webAPI,能帮助我们完成页面上各种交互逻辑的实现

node.js是什么

node.js简单来说就是一个运行在服务端的javaScript,一个叫Ryan Dahl的哥们用谷歌开源的V8引擎,自己进行了一些封装,对一些特殊用例进行优化,提供一些新的API,于是出现了node.js,由于chrome的V8引擎运行js的效率非常高,使得node.js提供了非常不错的性能

从前端进入node.js要注意什么

这两者都遵从ECMAScript规范,所以如果你对ES5/ES6的语法掌握的比较熟练,node的大部分语法都是可以看得懂得,而且再也不需要考虑浏览器兼容的问题了…想想还挺舒服
node的绝大部分功能,都是通过各种包来实现的,有的是官方的,有的是第三方的,node遵从common.js规范,node的开发实际上就是通过各个模块,结合js的语法,来实现具体的功能

如何系统的学习node.js

node.js的学习,不能单纯的看官方提供的文档,文档里的各种模块非常多,要结合自己业务中实际碰到的情况,查阅文档寻找解决的方法,还要去了解一些非常出名的第三方模块的使用,比如web应用搭建,就可以去了解express和koa,websocket可以去了解socket.io等
当你可以熟练的找到,引入,使用node的诸多插件的时候,也就可以用node来完成服务端业务的开发了,用的是熟悉的js

Helloworld

所有编程语言的学习,全是从Helloworld开始的,我们可以从简单的开始
先创建一个helloworld.js文件
在其中写上

console.log('Hello World!')

但是这似乎有些太过简单了…
我们可以从一个web应用开始

const http = require('http')
http.createServer(function(req,res){
	res.writeHead(200,{'Content-Type':'text/plain'})
	res.end('Hello World!')
}).listen(4396)//监听端口
console.log("Server running at http://127.0.0.1:4396");

这时通过node helloworld.js,我们就可以使该应用跑起来,在浏览器输入地址http://127.0.0.1:4396后,一个hello world就出现了

以上是node.js最基础的一些导入,运行,语法实际上和js差别不大,只不过各种新的模块可能会比较陌生一些,但是入门难度和学习成本相对都没有那么高了
作者也是node初学者,仅以此贴立下flag,要完成node的学习!

猜你喜欢

转载自blog.csdn.net/weixin_47232046/article/details/105710907