JavaScript >> Javascript 文檔 >  >> Node.js

新手節點工具鏈:提高生產力的最佳節點應用程序和庫

我經常收到這樣的問題:“您會推薦哪些工具用於 Node 開發?”軟件工程師喜歡優化和提高生產力,而不是浪費時間。我敢打賭你就是其中之一!繼續閱讀,找出最適合開發的 Node 工具。

  • IDE/代碼編輯器
  • 圖書館
  • 圖形用戶界面工具
  • CLI 工具

IDE/代碼編輯器

當談到你的主要工具,代碼編輯器時,我建議堅持使用更輕、更簡單的編輯器,比如 Atom 或 VS Code,而不是像 Webstorm 這樣成熟的 IDE。當然,IDE 會為您做更多事情,但這會帶來學習曲線和配置需求。 Node 是解釋的,因此不需要編譯它。這些文件只是帶有 .js 的純文本文件 擴展名。

以下是我列出的最佳 Node 編輯器:

  • Atom:由 GitHub 創建和維護;在底層使用 Electron、HTML、JS 和 CSS,這使得自定義或添加功能變得非常容易;允許通過包獲得 Git 和終端支持。價格:免費。
  • VS Code:新增功能;使用類似於 Atom 基於網絡的技術;由 Azure 的 Monaco 編輯器創建;帶有調試、基於類型的智能自動完成、Git 和終端支持。價格:免費。
  • WebStorm:與其說是編輯器,不如說是 IDE,由 JetBrains 開發,基於 IntelliJ 平台;有代碼協助、調試、測試、Git。價格:個人起價 59 美元/年。

還有更多選項,例如 Brackets、Sublime Text 3,當然還有 IDE,例如 Eclipse、Aptana Studio、NetBeans、Komodo IDE,以及基於雲的 Cloud 9、Codenvy。

選什麼?列表中的三個中的任何一個都是不錯的選擇。我聽說過關於 VS Code 的好消息,它們的智能自動完成功能是一件好事,但我認為這還不足以成為我從 Atom 切換的充分理由。所以試試 VS Code 和 Atom,看看你更喜歡哪一個。它們都提供了各種各樣的包和主題。

最流行和最有用的庫和項目依賴項

這是您將作為項目依賴項安裝的最常用和最流行的模塊的列表。 Node 開發人員幾乎在他們的所有項目中都使用這​​些模塊(或替代品)中的大部分。

這些庫與 npm 名稱一起列出,因此您可以執行 npm i {name} 替換 {name} 帶有包/模塊的名稱:

  • webpack:構建靜態資源,例如瀏覽器 JavaScript、CSS 甚至圖像。它允許在瀏覽器中使用節點模塊。
  • babel:通過將新代碼轉換為與舊版本 ECMAScript 兼容的代碼,允許在最新版本的 JavaScript/ECMAScript 中編寫代碼,而不必擔心運行時問題
  • axios:發出 HTTP 請求
  • express:最流行的 Node Web 框架
  • mongoose:MongoDB 對象-文檔映射庫
  • sequelize:PostgreSQL 對象關係映射器庫
  • socket.io:支持 Web Sockets 等的實時庫。
  • cheerio:用於在服務器上處理類 HTML 數據的 jQuery 語法
  • node-oauth:低級但非常成熟且經過測試的庫,用於推出任何 OAuth 集成
  • passport:OAuth 庫,可與主要服務快速集成
  • yargs
  • shelljs
  • mocha:測試框架
  • 異步:通過同時、順序或任何您想要的方式運行函數來控制流程
  • 並發:允許將 CLI 工具(本地)作為多個進程同時執行,例如 webpack 和 node-static。

注意:上面列出的一些庫/工具,如 webpack 或 mocha,可以全局安裝,而不是本地安裝在項目文件夾中。但是,全局安裝它們是一種古老的做法,目前是一種反模式,因為本地安裝允許開發人員在不同項目中使用該工具的多個版本,除了在 package.json 中指定這些工具。

當然,每個類別都有很多不同的選擇。例如,request 和 superagent 也是非常流行的 HTTP 代理庫。不過,我不想給你太多的選擇,讓你對差異感到困惑,我只列出了一種工具(通常是我目前使用最多的一種)。

CLI 工具(全局)

與上一節不同,這些工具可以在全球範圍內安裝,因為它們的版本很可能不會影響或破壞您的項目。

  • node-dev:監控並在當前文件夾中的任何文件更改時自動重新啟動您的 Node 應用程序
  • node-static:通過 HTTP 網絡服務器提供文件
  • node-inspector:在熟悉的 DevTools 界面中調試 Node 代碼(現在從 v7 開始成為 Node 的一部分)
  • docker:構建和運行 Docker 容器以隔離應用環境、加快部署並消除開發和生產(或任何其他)環境之間的衝突
  • curl:發出 HTTP(S) 請求以測試您的網絡應用程序(POSIX 的默認設置,但也可以用於 Windows)
  • nvm:更改 Node 版本,無需每次都安裝和重新安裝
  • wintersmith:使用 Node 模板和 Markdown 構建靜態網站
  • pm2:用於垂直擴展 Node 進程並確保容錯和 0 次重新加載的進程管理器

圖形用戶界面工具

很大一部分 Node 開發人員更喜歡 GUI(圖形用戶界面)工具,至少在某些任務中是這樣,因為這些工具需要更少的輸入,並且具有使它們更高效、開發更容易和更簡單的功能。

  • Postman:能夠保存請求和歷史記錄、更改格式(JSON、表單等)和執行其他操作的 HTTP 客戶端
  • MongoUI:在 Web 界面中修改和檢查 MongoDB 數據。您可以在您的服務器上託管此 Web 應用程序以啟用數據庫管理。
  • Chrome:DevTools 是檢查您的請求、網絡、流量、CPU 配置文件和其他開發人員相關數據的好方法,這對於調試非常有用
  • iTerm、itermocil 和 zsh:原生 macOS 終端應用程序的更好替代品,它與 itermocil 和 zsh 一起大大提高了生產力
  • SourceTree:可視化 git 樹和歷史記錄

如果您喜歡這篇文章,下一步是更好地了解 Node 平台。因此,請查看您不了解 Node 的免費課程。


Tutorial JavaScript 教程
  1. 深入了解 Visual Studio 代碼

  2. OOP:從偽經典類實例化到類實例化

  3. 你是一個 console.log 癮君子嗎?添加此代碼段以使其更快、更容易和更清晰地使用。

  4. 第 5 天:循環

  5. 了解 JavaScript 中的 OOP 範式。

  6. .substr(0,1) 或 .charAt(0) 有什麼區別?

  7. 使用 Google 表格構建實時 Covid-19 跟踪器

  1. 打字稿類型錯誤屬性不存在

  2. 發布 ssg-factory npm 包

  3. 賽普拉斯斷言

  4. 隊列數據結構:如何構建節點任務隊列

  5. 如何在 NodeJS 和 TypeScript 中使用 InversifyJS 和 Utils

  6. 帶有 Framer Motion 的動畫輪播

  7. 在 Leafletjs 中動態獲取 WMS 層的範圍

  1. 從 Angular 到 Vue:感覺又像個初學者了

  2. 2013 年 100 大 jQuery 插件(第 4/5 部分)

  3. 如何使用引導程序和對比創建響應式側邊欄

  4. 在 Strapi 中持久化 UI 自定義