終於進入NodeJS中最為人知的套件管理系統NPM了,不諱言的當初對NodeJS一知半解的我對於NodeJS的特色只聽說過NPM,今天就要對NPM做個簡單的介紹。
NPM(Node Packages Manager)是NodeJS中套件管理系統,可以管理、安裝NodeJS非常豐富且大量的開放原始碼套件,包含套件版本的與套件相依性的管理,這些開放原始碼的套件都是透過NPM Registry的機制發布的,開發人員可以透過此機制發布個人開發的套件,也能藉由使用其他人開發的套件讓自己的程式站在巨人的肩膀上。
NPM的套件版本管理是依據Semantic Versioning(語意化版本)進行,語意化版本以「主版號.次版號.修訂號」的形式表示,其中修訂號用於更新修正錯誤後的版本、次版號為新增部份內容,兩種版本更新都能讓使用套件的程式碼維持正常運作,但主板號的更新可能會導致程式碼無法執行,在更新前需要仔細確認內容。
npm init
進行初始化以創建一個紀錄套件的package.json
檔案。package.json
檔案的預覽,確認輸出後可以在目標資料夾找到新建好的package.json
檔,用於後續安裝套件的管理。npm init
產製的package.json
檔,其中的scripts
部份,是透過在終端機下npm
指令可以執行的內容。scripts
中的start
說明,在終端機輸入npm start
會以Node執行server.js (Day13的程式碼,以JSON傳送物件至瀏覽器),開啟瀏覽器可以確認伺服器程式碼執行中。以上是NPM簡介與開始使用的第一步,明天會以NPM的套件安裝與相依性為主題。
今天在寫NPM的部份的時候,有發現官網有帳號申請的功能,不確定有沒有人跟我遇到一樣的疑問,順便提一下~NPM不用申請帳號也可以安裝和使用套件,倒是有看到發布套件的教學就需要帳號了。
https://semver.org/lang/zh-TW/
Learn and Understand NodeJS [課程]