Node.js可以用来做什么事?

本文正在参与技术专题征文Node.js进阶之路,点击查看详情

Node.js是一项服务器技术。我们都知道客户端提出服务请求,而服务器端负责处理请求并提供服务。而对于互联网来说,在Node.js之前JavaScript是一项完全的客户端技术,被用于浏览器中实现各种动画,对DOM的操作等等。而后端,即服务端则是由PHP、Python、Ruby、Java等等语言来实现。Node.js的出现,使得前后端使用同一种语言,统一模型的梦想得以实现。

一直以来看到过很多人解释node.js是什么东东,看过非常多种解释,看了其他人解释半天还是云里雾里的,直到我听到这么一句话:“node.js就是一个前端觉得写个功能还要等后端捣鼓半天,然后干脆就自己用javascript把后端搞定的一个东西。” 突然感觉简单粗暴,一针见血,哈哈哈哈 有没有这种感觉!

初识TypeScript

从入职新公司开始算,使用typescript已经有半年多了,这是一个创业公司使用nodejs开发的后台业务管理系统,已经做的很大了,支撑着公司每月千万人民币的业务处理。很多怀疑nodejs是否可以开发后台管理的人的大可以放心使用,美中不足的是nodejs对报表这类数据处理量较大的功能有点力不从心,经常拖垮系统,所以后来使用JAVA代替了这部分功能。

使用感受

其实起初对于typescript开发nodejs我是拒绝的,原因是建立起这个项目的人都走了,而这个项目结构实在是复杂,在windows下环境搭建费了好大精力,尤其是为了使用一个bcrypt加密包,需要安装Python,C++来编译,还不能使用nodejs0.12以上版本,最烦人的是每次修改文件后编译速度非常慢,这让我重新体验了开发JAVA时期的痛苦。而且服务启动方法也是前人自己编写shell脚本来同时编译前端文件和后端文件。并没有使用nodemon,supervisor这种监控工具。后来折腾发现可以直接使用vscode单独编译ts文件,一般12秒就编译完成,这与我之前的项目1秒修改重启相比还是慢了很多,不过也免强只能接受。所以基于这些不好的体验我很不喜欢typescript,如此麻烦和JAVA开发有什么区别。

重新认识

有很多人说 Node.js 的语法太灵活,不易维护,缺少类型化,难以重构,但是这些问题早已被 Typescript 解决掉了。纯nodejs写起来确实不如typescript爽,主要是纯nodejs在webstorm和vscode上语法提示和错误提示较弱,而typescript则可以很好的提示并且在开发过程中就能发现一些很低级错误,不用等到运行时才发现。尤其是对ES6的支持比较完整,甚至可以使用async,await这些ES7提案中的特性。有一段时间也是很想练习一下,摸索了半天总算把demo项目跑起来了。 

猜你喜欢

转载自juejin.im/post/7073399872409305095