zoukankan      html  css  js  c++  java
  • 模块和包

    模块和包:
    模块和包是Node.js最重要的支柱,开发一个具有一定规模的程序不可能只用一个文件,通常需要把各个功能拆分,封装,然后
    组合起来,模块正是为了实现这种方式而诞生的,Node.js提供了require函数来调用其他模块而且模块都是基于文件的,机制十
    分简单

    模块是Node.js应用程序的基本组成部分,文件和模块是一一对应的,Node.js提供了exports和require两个对象,其中exports
    是模块公开的接口,require用于从外部获取一个公开的接口,即所获取模块的exports对象

    //hello1和helo2指向的是同一个实例,因此hello1.setName的结果被hello2.setName覆盖,最终输出结果是由后者决定的

    // exports.Hello = Hello;
    module.exports = Hello;
    //在外部引用该模块时,其接口对象就是要输出的Hello对象本身,而不是原先的exports
    //事实上,exports本身仅仅是一个普通的空对象,即{},它专门用来声明接口,本质上是通过它为模块闭包的内部建立
    //一个有限的访问接口,因为它没有任何特殊的地方,所以可以用其他东西来代替


    /*
    包是在模块基础上更深一步的抽象,他将某些独立的功能封装起来,用于发布、更新、依赖管理和版本控制
    Node.js是一个目录,其中包含一个JSON格式的包说明文件package.json,严格符合CommonJS规范的包,应该具备以下特征:
    package.json必须在包的顶层目录下
    二进制文件应该再bin目录下
    JavaScript代码应该在lib目录下
    文档应该再doc目录下
    单元测试应该在test目录下
    */

    /*
    最简单的包,就是一个作为文件夹的模块

    包通常是一些模块的集合,在模块的基础上提供了更高层的抽象,相当于提供了一些固定接口的函数库,
    通过定制package.json,我们可以创建更复杂、更完善、更符合规范的包用于发布



    */

    工作并不只是为了那点工资,而是为了创造一份属于自己的事业
  • 相关阅读:
    Proj THUDBFuzz Paper Reading: PMFuzz: Test Case Generation for Persistent Memory Programs
    入围 WF 后训练记
    算法竞赛历程
    2021 多校 杭电 第十场
    2021 多校 杭电 第九场
    2021 多校 牛客 第十场
    2021 多校 牛客 第九场
    2021 多校 杭电 第八场
    2021 多校 杭电 第六场
    2021 多校 杭电 第七场
  • 原文地址:https://www.cnblogs.com/zouer/p/5041542.html
Copyright © 2011-2022 走看看