Nodejs-day 02 应用程序从架构 模块系统 npm与包

一、应用程序从架构分为:C/S、B/SC/S: client:客户端server:服务器C/S的特点: 客户端需要安装C/S的缺点:客户端需要安装B/S: browser:浏览器 【重点】server:服务器B/S的特点:客户端无需安装,只要有浏览器和网络就可以随时随地来访问。B/S的缺点:客户端没有数据处理能力,所有的数据(业务)都要提交给服务器来处理,当访问量较大时服务器的压力也会增大。B/S程序的运行原理【重点】:请求:request响应:res
摘要由CSDN通过智能技术生成

一、应用程序从架构分为:C/S、B/S

C/S: client:客户端

server:服务器

C/S的特点: 客户端需要安装

C/S的缺点:客户端需要安装

B/S: browser:浏览器 【重点】

server:服务器

B/S的特点:客户端无需安装,只要有浏览器和网络就可以随时随地来访问。

B/S的缺点:客户端没有数据处理能力,所有的数据(业务)都要提交给服务器来处理,当访问量较大时服务器的压力也会增大。

B/S程序的运行原理【重点】

请求:request

响应:response

二、模块系统

2.1 模块化介绍

2.1.1 传统开发的问题

随着项目的扩大,然后代码就越来越庞大 ,如果没有很好的规划,后期维护非常复杂(甚至就维护不了)。

比如:a.js文件中的代码有:var usr='李四';function test(){} b.js中的代码有:var usr="张三"; function test(){} 如果在某个.html文件中同时使用a.js文件和b.js文件时则会出现问题,要解决类似于这样的问题可以使用闭包、面向对象编程等来解决,但是没有一个统一的标准。

2.1.1 概述

2.1.2 解决问题:(好处)

2.2. Commonjs简述

2.2.1 组成

(1)如何定义数据和功能函数(如何定义公共代码)

(2)外部如何使用定义的数据和功能函数

2.2.2 定义规范的好处

既然是规范,那么就应该是大家默认都应该遵守的,这样就降低了沟通的成本,极大方便了各个模块之间的相互调用,利于团队协作开发。

2.3 模块的种类

  • 自定义模块:(开发者自己定义的模块,每一个js文件都可以称为一个模块)

    开发者,可以使用commonjs规范自己写的js文件,都称为自定义模块

  • 内置模块:(由Node.js官方提供,如:fs、path、querystring等)

  • 第三方模块:(由第三方开源出来的模块,使用前需要npm工具从npm社区下载)

2.4 自定义模块

2.4.1 nodejs自定义模块的语法(commonjs):【重点】

1、单个暴露:

exports.属性名 = 值

exports.方法名=function(){}

或:

module.exports.属性名 = 值

module.exports.方法名 = function(){}

2、批量暴露:

module.exports= {属性名,方法名}

注意:单个暴露与批量暴露不能同时使用;

2.4.2 自定义模块的定义与使用步骤:

第一步:创建自定义模块文件并使用nodejs自定义模块的语法(commonjs)定义模块文件代码;

第二步:在另外一个文件中使用require()方法引入要使用的自定义模块文件,但要注意:在引入自定义模块文件时要以./或../开头

代码示例:

自定义模块文件m1.js文件的代码如下:

​
exports.uname = '张三';
module.exports.age = 20;
​
exports.jsq = function() {
    console.log('这是计算器方法 ');
}
​
module.exports.fn = function() {
    console.log('fn()方法在m1.js文件中');
}

自定义模块文件m

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值