zoukankan      html  css  js  c++  java
  • npm 是什么?

    npm 是什么?

    本文写于 2020 年 6 月 16 日

    最近帮几个同学装开发环境,发现他们会各种“卡死”在 npm 安装一些包的过程中。

    他们会非常纠结这个命令我明明敲的和网上差不多,为什么错了呢?

    其中一个锅,我觉得改甩给 CSDN,实在是有很多错误的解决方案被放在了网站上;另一个就是其实很多人都不会告诉新人 npm 到底是什么,只是单纯的甩给他们几条命令,任其自生自灭。

    要谈 npm,那必然要先说说什么是程序员的社区。

    社区

    “自古以来”程序员就有着社区文化。社区即为一些拥有共同职业或者相同兴趣的人们自发的组织在一起,分享信息与资源,进行合作。

    那程序员的社区干些什么呢?

    1. 分享源代码;
    2. 讨论代码问题;
    3. 分享学习资源和各种好玩的网站之类。

    比如最大的程序员社区就是 GitHub。加入 GitHub 之后,你就可以使用社区中的别人的开源代码和项目了(注意开源协议),同时你也可以贡献你的代码,让全世界都能看见。

    但是 GitHub 才几年,之前的程序员是怎么共享代码的呢?

    稍微早一点,那真的很难去让所有人加入社区,可是稍微往后一点,大家都会通过网址去共享代码

    比如你想使用 jQuery,就可以使用 <script src="xxxxx"> 来在自己的网站上引入 jQuery。有了 GitHub 之后,还可以通过 clone xxxx 将代码从 GitHub 下载到本地。

    但是其实还是蛮麻烦的,因为下载下来不仅要去很多的网站进行下载,而且如果有个网站挂了呢?那整个网页都会收到影响呀。

    于是 Isaac Z. Schlueter 就给出了一个解决方案:用一个工具集中这些代码。之后便创建了 npm。

    所谓 npm,全称就是 Node Package Manager,node 包管理器

    npm 的实现思路可以这么理解:

    1. 买个服务器做仓库;
    2. 让 jQuery、Bootstrap……等将代码提交到服务器上;
    3. 如果有人想用这些库,只需要把要用的库 npm install jQuery 到本地;
    4. 库的代码就会被下载到 node_modules 目录中。

    这样子被使用的代码,就叫做“包”,你可以用他下载、删除很多包,所以叫做“包管理器”。

    最后解释一下这几个命令:

    npm install xxx

    先安装 xxx,但是这样安装,只是下载了,并没有“登记”到你的项目,必须连同版本号手动将他们添加到模块配置文件 package.json 中的依赖里。

    npm install xxx -S

    优化上一个操作,它会自动帮你添加到 package.json 的依赖——比如 vue、react。

    npm install xxx -D

    跟上一个几乎一样,区别是,这个是将包添加到开发依赖——比如 prettier(格式化代码)、babel(编译代码)。

    npm install -g xxxx

    将 xxxx 包,全局安装到你的电脑上。

    (完)

  • 相关阅读:
    Effective Java 第三版——72. 赞成使用标准异常
    Effective Java 第三版——71. 避免不必要地使用检查异常
    Effective Java 第三版——70. 对可恢复条件使用检查异常,对编程错误使用运行时异常
    Effective Java 第三版——69. 仅在发生异常的条件下使用异常
    Effective Java 第三版——68. 遵守普遍接受的命名约定
    Effective Java 第三版——67. 明智谨慎地进行优化
    Effective Java 第三版——66. 明智谨慎地使用本地方法
    Effective Java 第三版——65. 接口优于反射
    Effective Java 第三版——64. 通过对象的接口引用对象
    Effective Java 第三版——63. 注意字符串连接的性能
  • 原文地址:https://www.cnblogs.com/xhyccc/p/13260541.html
Copyright © 2011-2022 走看看