Node.js构建可扩展的Web应用1
《Practical Node.js:Building Real-World Scalable Web Apps》【美】Azat Mardan(電子工業出版社)
安裝node.js和NPM(node.js的包管理器)
官網地址:https://nodejs.org/en/
找到對應的系統版本的安裝包,下載,我的是win-64位系統
?
?
驗證安裝
安裝完成后,按win+r打卡命令行,輸入cmd,打開dos窗口
輸入:node -v,查看node.js的版本信息
輸入:npm -v,查看npm的版本信息
現在的npm都是隨著node一起安裝的,很方便,不用另外安裝!
出現類似以下信息,說明安裝成功!!!
?
具體操作可以參考我的另外一篇博文:
https://www.cnblogs.com/1906859953Lucas/p/9573424.html
?
使用Express.js 4創建node.js的web應用程序
Express.js是基于node.js的http模塊和connect組件的web框架,這些組件叫做中間件,開發的理念是“約定大于配置”。
安裝Express
dos中輸入:npm install express,不過不建議直接使用,可以使用淘寶鏡像
使用淘寶 NPM 鏡像
大家都知道國內直接使用 npm 的官方鏡像是非常慢的,這里推薦使用淘寶 NPM 鏡像。
淘寶 NPM 鏡像是一個完整 npmjs.org 鏡像,你可以用此代替官方版本(只讀),同步頻率目前為 10分鐘 一次以保證盡量與官方服務同步。
你可以使用淘寶定制的 cnpm (gzip 壓縮支持) 命令行工具代替默認的 npm:
npm install -g cnpm --registry=https://registry.npm.taobao.org?
這樣就可以使用 cnpm 命令來安裝模塊了:
cnpm install [name]更多信息可以查閱:http://npm.taobao.org/。
?
?為了方便測試,新建一個demo文件夾,來安裝需要的express
?
dos定位到demo路徑,輸入:cnpm install express,安裝
?
安裝完畢,demo文件夾中會產生一個node_modules文件夾,所有安裝的模塊都會在里面
?
?
?這一塊由于作者使用的ios系統,我的Windows系統,寫的看不懂
未完待續。。。
?
基于Mocha的測試驅動開發和行為驅動開發
Mocha(發音"摩卡")誕生于2011年,是現在最流行的JavaScript測試框架之一,在瀏覽器和Node環境都可以使用。
所謂"測試框架",就是運行測試的工具。通過它,可以為JavaScript應用添加測試,從而保證代碼的質量。
?
測試驅動開發(TDD,test drive development)是一種主要的敏捷開發技術。一邊寫,一邊測試,增加程序員信心,獲取更有效率的開發。
行為驅動開發(BDD,behavior dirve development)是基于TDD的,是一個專業版本,從業務需求角度出發需要的測試單元。
安裝Mocha測試框架
dos輸入:cnpm install -g mocha
?
?使用mocha測試js腳本
這里還使用到了chai.js,所以請一并安裝吧
輸入:cnpm install chai
add.js
// add.js function add(x, y) { return x + y; } module.exports = add; add_test.js // add_test.js var add = require('./add.js'); var expect = require('chai').expect; describe('加法函數的測試', function() { it('1 加 1 應該等于 2', function() { expect(add(1, 1)).to.be.equal(2); }); it('1 加 3 應該等于 4', function() { expect(add(1, 3)).to.be.equal(4); }); });
dos輸入:mocha ?add_test.js
?
?測試通過!!!
稍加改動,讓他錯誤
// add_test.js var add = require('./add.js'); var expect = require('chai').expect; describe('加法函數的測試', function() { it('1 加 1 應該等于 2', function() { expect(add(1, 1)).to.be.equal(2); }); it('1 加 3 應該不等于 5', function() { expect(add(1, 3)).to.be.equal(5); }); });會看見具體的報錯信息:
?
轉載于:https://www.cnblogs.com/1906859953Lucas/p/9672020.html
總結
以上是生活随笔為你收集整理的Node.js构建可扩展的Web应用1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 享年86岁 电影美术大师杨占家去世 手绘
- 下一篇: Apache Hive