模組(module)
通常以單個檔案形式存在的功能片段,入口檔案通常稱之為入口模組或主模組
庫(library,簡稱lib)
以乙個或多個模組組成的完整功能塊,為開發中某一方面的問題提供完整的解決方案
包(package)
包含元資料的庫,這些元資料報括:名稱、描述、git主頁、許可證協議、作者、依賴等等
commonjs 的出現,使 node 環境下的 js **可以用模組更加細粒度的劃分。乙個類、乙個函式、乙個物件、乙個配置等等均可以作為模組,這種細粒度的劃分,是開發大型應用的基石。
為了解決在開發過程中遇到的常見問題,比如加密、提供常見的工具方法、模擬資料等等,一時間,在前端社群湧現了大量的第三方庫。這些庫使用 commonjs 標準書寫而成,非常容易使用。
開發環境中安裝的大量的庫如何在生產環境中還原,又如何區分更新乙個庫極度麻煩自己開發的庫,如何在下一次開發使用
以上問題,就是包管理工具要解決的問題
本門課程講解的包管理器幾乎可以這樣認為,前端所有的包管理器都是基於 npm 的,目前,npm 即是乙個包管理器,也是其他包管理的基石npm:重點
yarn:次重點
其他:了解
npm 全稱為 node package manager,即 node 包管理器,它執行在 node 環境中,讓開發者可以用簡單的方式完成包的查詢、安裝、更新、解除安裝、上傳等操作
npm 由三部分組成:
官網:
cli:command-line inte***ce 命令列介面
node 和 npm 是互相成就的,node 的出現讓 npm 火了,npm 的火爆帶動了大量的第三方庫的發展,很多優秀的第三方庫打包上傳到了 npm,這些第三方庫又為 node 帶來了大量的使用者
Linux包管理器
使用 linux 系統總是免不了要接觸包管理工具。比如,debian ubuntu 的 apt opensuse 的 zypp fedora 的 yum mandriva 的 urpmi slackware 的 slackpkg archlinux 的 pacman gentoo 的 emerge ...
Python 包管理器
剛開始學習python時,在看文件和別人的blog介紹安裝包有的用easy install,setuptools,有的使用pip,distribute,那麼這幾個工具有什麼關係呢,看一下下面這個圖就明白了 可以看到distribute是setuptools的取代,pip是easy install的取...
python pip包管理器
pip為包管理器,跟linux上眾多的包管理器的功能大致相同,就是對包進行管理,使得包的安裝,更新和解除安裝更容易。pip更新到最新版 windows python m pip install u piplinux或mac pip install u pippip包的安裝 pip install p...