Node.js构建可扩展的Web应用1

简介: 《Practical Node.js:Building Real-World Scalable Web Apps》【美】Azat Mardan(电子工业出版社)安装node.js和NPM(node.js的包管理器)官网地址:https://nodejs.

《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); 
	}); 
});

会看见具体的报错信息:

 

目录
相关文章
|
6天前
|
前端开发 JavaScript
使用JavaScript实现复杂功能:构建一个自定义的拖拽功能
使用JavaScript实现复杂功能:构建一个自定义的拖拽功能
|
9天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
24天前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之做的web服务计费如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
169 3
|
1天前
|
缓存 负载均衡 数据库
优化后端性能:提升Web应用响应速度的关键策略
在当今数字化时代,Web应用的性能对于用户体验至关重要。本文探讨了如何通过优化后端架构和技术手段,提升Web应用的响应速度。从数据库优化、缓存机制到异步处理等多个方面进行了深入分析,并提出了一系列实用的优化策略,以帮助开发者更好地应对日益增长的用户访问量和复杂的业务需求。
8 1
|
1天前
|
缓存 监控 数据库
Flask性能优化:打造高性能Web应用
【4月更文挑战第16天】本文介绍了提升Flask应用性能的七大策略:优化代码逻辑,减少数据库查询,使用WSGI服务器(如Gunicorn、uWSGI),启用缓存(如Flask-Caching),优化数据库操作,采用异步处理与并发(如Celery、Sanic),以及持续监控与调优。通过这些手段,开发者能有效优化Flask应用,适应大型或高并发场景,打造高性能的Web服务。
|
3天前
|
数据库 开发者 Python
Python中使用Flask构建简单Web应用的例子
【4月更文挑战第15天】Flask是一个轻量级的Python Web框架,它允许开发者快速搭建Web应用,同时保持代码的简洁和清晰。下面,我们将通过一个简单的例子来展示如何在Python中使用Flask创建一个基本的Web应用。
|
6天前
|
JavaScript 前端开发 API
Vue.js:构建高效且灵活的Web应用的利器
Vue.js:构建高效且灵活的Web应用的利器
|
14天前
|
XML JSON JavaScript
使用JSON和XML:数据交换格式在Java Web开发中的应用
【4月更文挑战第3天】本文比较了JSON和XML在Java Web开发中的应用。JSON是一种轻量级、易读的数据交换格式,适合快速解析和节省空间,常用于API和Web服务。XML则提供更强的灵活性和数据描述能力,适合复杂数据结构。Java有Jackson和Gson等库处理JSON,JAXB和DOM/SAX处理XML。选择格式需根据应用场景和需求。
|
24天前
|
JavaScript
js开发:请解释什么是ES6的扩展运算符(spread operator),并给出一个示例。
ES6的扩展运算符(...)用于可迭代对象展开,如数组和对象。在数组中,它能将一个数组的元素合并到另一个数组。例如:`[1, 2, 3, 4, 5]`。在对象中,它用于复制并合并属性,如`{a: 1, b: 2, c: 3}`。
12 3
|
29天前
|
前端开发 JavaScript 安全
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
71 0