很多刚刚接触nodejs的初学者,都会经历一个很繁冗的环境安装过程。

一般主要要安装nodejs,npm和express三样东西。那么这三样东西分别是干什么的呢?

本篇文章就大致介绍一下这三样东西分别是干什么的:

nodejs

首先要说的是nodejs,既然我们要装nodejs,那这个其实就没什么好解释的。

nodejs就是运行框架,就像C#和.net,JAVA和JRE一样,nodejs就是nodejs。

所以其实装了nodejs以后,nodejs其实就已经可以编码和运行了。

npm

npm是一个JavaScript的包管理程序。

它的用途和.net中的NuGet,Java中的Maven是同一种作用。

对于不了解NuGet和Maven也不了解的同学可以继续往下看:

什么是包管理?

我们开发程序的时候,经常会选择一些第三方框架来帮助我们专注于实现业务。

那么一旦要选择第三方框架,就一定会存在以下问题:

  1. 我要去哪里下载我要的第三方框架?

  2. 我要用什么版本?

  3. 如何更新我已经使用的第三方框架?

那么包管理器就是为了解决上述问题而存在的。

使用者安装了包管理器以后,只要告诉包管理器,我要用什么框架,什么版本的。剩下来的事,包管理器就全部帮你完成了,帮你下载指定版本的框架到你需要的项目中间并引用,甚至于参与到编译和运行中去。

npm就是这样的一个程序,它提供了我们用于JavaScript开发所需要的各种常见第三方框架的下载。

Express

经常会看到nodejs环境安装中涉及到Express的安装,这个东西也是非常难装的,经常会出现各种各样的问题。

那么Express又是干什么的呢?

对nodejs有一些了解同学一定知道,nodejs本身其实只提供了文件、网络端口监听、字符集等基本的操作。

但是如果要往一个成熟的BS架构服务端上去做的话,似乎还少了些什么?比如路由功能、异常处理等等。

如果我们每次做项目都要把一些BS架构服务端所需要的基本骨架都编写一次,肯定大家都不乐意。

那么Express就帮助你完成了这些事情。

Express是nodejs的一套框架。

对,它只是一套框架,并不是nodejs的真身,没有它我们一样可以做nodejs,只不过——会累一些。。。

Express提供了很多面向服务端骨架的内容,让我们尽可能的直接编写那些属于业务逻辑的代码,降低了对错误处理的难度等等

Express在较新的版本中由两个部分组成:

  1. express

  2. express-generator

前者是负责运行时的框架。

后者是负责生成一个express项目的标准目录结构,开发人员只要按照相应的目录存放相应的文件,express框架就可以顺利的运行起来。

文章为作者原创,转载请注明出处 http://www.zizhusoft.com/note/show.aspx?id=b67b2069-4c15-4008-b0f3-6cdc7be3f2a1  ,谢谢合作

【转载】nodejs,npm,express分别什么?的更多相关文章

  1. 阿里云centos 安装 nodejs npm express

    yum check-update yum install vsftpdvi /etc/vsftpd/vsftpd.conf anonymous_enable=NO service vsftpd sta ...

  2. npm install Error:EPROTO: protocol error, symlink '../mime/cli.js' -> '/vagrant/src/nodejs/node_modules/express/node_modules/send/node_modules/.bin/mime'

    我在ubuntu上使用npm安装依赖是出现下面错误: npm ERR! Linux 3.13.0-101-genericnpm ERR! argv "/usr/bin/nodejs" ...

  3. (转 留存)Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤

    Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤 标签: NodeJSnpmbower 2015-07-17 16:38 3016人阅读 评论(0) 收藏 举报  分类: G ...

  4. Windows环境下的NodeJS+NPM+Bower安装配置步骤

    Windows下的NodeJS安装是比较方便的(v0.6.0版本之后,支持windows native),只需要登陆官网(http://nodejs.org/),便可以看到首页的“INSTALL”按钮 ...

  5. 阿里云主机Nginx下配置NodeJS、Express和Forever

    https://cnodejs.org/topic/5059ce39fd37ea6b2f07e1a3 AngularJS中文社区即运行在阿里云主机上,本站使用Nginx引擎,为了AngularJS,我 ...

  6. (转)如何制作nodejs,npm “绿色”安装包

      摘自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=8625039&id=3817492       由于公司环境 ...

  7. nodejs下express+ejs环境搭建

    nodejs下express+ejs环境搭建   分类: Nodejs 1.进入需要创建项目的目录    cd F:\nodeCode     2.创建一个带ejs模板工程,工程名为haha    e ...

  8. nodejs之express静态路由、ejs

    1.静态路由与ejs使用 /** *1.安装ejs npm install ejs --save-dev * *2.express 里面使用ejs ,安装以后就可以用,不需要引入 * *3.配置exp ...

  9. Windows 系统下设置Nodejs NPM全局路径

    Windows下的Nodejs npm路径是appdata,很不爽,想改回来,但是在cmd下执行以下命令也无效 npm config set cache "D:\nodejs\node_ca ...

  10. ubuntu14.04下nodejs + npm + bower的安装、调试和部署

      1. 简介 本文介绍ubuntu14.04下nodejs+npm+bower的安装.调试和部署 参考文档 https://docs.npmjs.com/getting-started https: ...

随机推荐

  1. Character Timing for T=0

    The minimum interval between the leading edges of the start bits of two consecutive characters sent ...

  2. 手把手原生js简单轮播图

    在团队带人,突然被人问到轮播图如何实现,进入前端领域有一年多了,但很久没自己写过,一直是用大牛写的插件,今天就写个简单的适合入门者学习的小教程.当然,轮播图的实现原理与设计模式有很多种,我这里讲的是用 ...

  3. OAuth2.0授权

    一.什么是OAuth2.0官方网站:http://oauth.net/ http://oauth.net/2/ 权威定义:OAuth is An open protocol to allow secu ...

  4. window.onload用法详解:

    网页中的javaScript脚本代码往往需要在文档加载完成后才能够去执行,否则可能导致无法获取对象的情况,为了避免这种情况的发生,可以使用以下两种方式: 一.将脚本代码放在网页的底端,这样在运行脚本代 ...

  5. hiho一下21周 线段树的区间修改 离散化

    离散化 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho在回国之后,重新过起了朝7晚5的学生生活,当然了,他们还是在一直学习着各种算法~ 这天小Hi和小Ho ...

  6. 关于vue.js的计算属性练习代码

    参照官网联系如下: <!DOCTYPE html><html lang="en"><head> <meta charset="U ...

  7. osx下配置Cocos2d-x 3.x Android开发环境

    配置前需要准备的 首先需要看一下官网文档 http://www.cocos.com/doc/article/index?type=cocos2d-x&url=/doc/cocos-docs-m ...

  8. floyd算法

    求两个顶点间的最短距离,直觉是这样的问题可以用尝试和枚举的办法来求解,这显然可行,但是我们可以换个方式来看待这个问题,比如, 可以这样描述,“在给定的点集(编号为1~k,k=图中所有的顶点数量)中,i ...

  9. HTML5桌面通知:notification

    最近由于公司业务需要,领导要求IM消息有像网页微信那样有新消息桌面右下角弹出一个提示框的效果!由于自己才疏学浅,一时还没明白微信是怎么实现的!所以只能问百度(因为懒得FQ)咯! 在网上搜索了N久,心都 ...

  10. linux 删除进程的多种方法

    kill pid kill -9 pid kill -15 pid pkill -f *.php kill -s 9 pid