🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付

簡介

大家好!最近我一直專注於後端開發,終於決定是時候深入學習 Node.js 了。我一直拖延這個時間,現在終於到了❗

老實說,我以前在考慮後端概念時感到有點害怕 - 例如建立伺服器使用資料庫...😳和一般基礎設施。我不知道 Node.js 為我準備了什麼...直到幾天前。 🤗

令我驚訝的是,我真的很喜歡它!它操作起來非常容易上手,邏輯性也很強,尤其是因為我已經有 JavaScript 知識了。

後端世界還有很多東西要學習,但我並不專注於追求完美,我更注重進步本身。在未來的專案中運用這些學到的技能的前景非常令人鼓舞,我渴望繼續前進!

祝我這趟旅程好運! 😬希望我在學習 Node.js 時不會破壞任何伺服器! 😂

圖片描述


嚴肅地說,以下是我們將在第一部分詳細介紹的內容:

1. 設定階段:安裝、REPL 和package.json

2. 模組化:理解模組(CommonJS 與 ES 模組)

3. 工作流程:NPM 腳本、Nodemon 和.gitignore

4. 安全基線:環境變數和.env文件


什麼是 Node.js?

Node.js 是一個基於 Chrome V8 引擎建立的 JavaScript 執行階段,允許你在伺服器端執行 JavaScript 。與在瀏覽器中執行的傳統 JavaScript 不同,Node.js 允許你使用相同的語言建立伺服器端應用程式、管理檔案和資料庫、建立 API 等等。

Node.js 通常用於伺服器端和後端開發,包括:

➤ Web 伺服器和即時應用程式,

➤ 用於前端和後端之間通訊的 REST 或 GraphQL API,

➤ 資料庫管理(MongoDB、PostgreSQL、MySQL 等)

➤ 自動化和伺服器端腳本,

➤ 得益於其非同步、事件驅動的架構,微服務和可擴展應用程式。


  1. 設置舞台

在編寫任何伺服器程式碼之前,我們需要確保已安裝執行環境並且我們的專案已正確初始化!

1.a) 安裝:

顯然,第一步是將 Node.js 引入您的系統。

這些指令應該顯示已安裝的版本,確認 Node.js 引擎和 NPM(Node 套件管理器)都已準備就緒。

node -v
npm -v

1.b) Node REPL(即時遊樂場):

REPL(讀取-求值-列印循環)是一種無需編寫和保存整個檔案即可快速測試函數、新語法或本機模組的工具。

測試程式碼:

node
> console.log("Hello, Node.js!")

1.c)package.json:

package.json可以說是 Node.js 專案中最重要的檔案。它是應用程式的身份證。

要建立此文件,請導航到您的專案目錄並執行:

npm init -y

到目前為止,感覺就像一個簡單熟悉的蛋糕,對吧? 🤗

圖片描述


2.模組化

任何健全的 Node.js 專案的關鍵組成部分是如何組織程式碼並在不同檔案之間共用。 Node.js 目前支援兩種主要的模組系統。了解它們之間的差異對你來說至關重要!

2.a) CommonJS (CJS) - 經典

這是 Node.js 中最初且長期存在的標準系統。

語法:使用require()函式和module.exports

執行:模組載入是同步的(直到模組完全載入後才會停止執行)。

用法:除非另有說明,否則這是帶有.js擴展名的檔案的預設設定。

例子:

// exporting module
module.exports = {
  add: (a, b) => a + b
};

// importing module
const { add } = require('./math');
console.log(add(5, 5));

2.b) ES 模組(ESM)-現代標準

ESM 是官方 JavaScript 標準(在 ES6 中引入),現在在 Node.js 中得到全面支援並推薦用於新專案。

語法:使用import和 export keywords

執行:支援異步加載,一般效率更高。

用法:需要.mjs副檔名或在package.json file中設定"type": "module"

// exporting module
export const subtract = (a, b) => a - b;

// importing module
import { subtract } from './math.js';
console.log(subtract(10, 3));

我建議你使用模組時要小心,ES 模組是現代標準,但在導入任何內容之前,請確保你了解專案使用的模組類型。我自己一開始也遇過這種情況❗🙃


3.工作流程

這些功能將幫助您自動化和簡化工作流程,節省時間並避免重複性任務。

3.a)NPM 腳本

直接從package.json自動執行終端命令。

例如,您可以建立腳本來啟動伺服器:

// package.json
"scripts": {
  "start": "node server.js",
  "dev": "nodemon server.js"
}

然後,您可以使用下列命令輕鬆執行它們: npm run startnpm run dev

3.b) Nodemon(自動刷新器)

Nodemon 是一個必備的開發專用 NPM 套件。為什麼它如此重要? ❓它會自動監控來源檔案中的更改,並在每次儲存時重新啟動 Node.js 伺服器

安裝(作為開發依賴項): npm install -D nodemon

3.c).gitignore(保持 GitHub 清潔)

該文件對於維護乾淨、安全的儲存庫至關重要。它指示 Git 在提交期間忽略哪些文件和目錄。

必須忽略:要忽略的兩個最關鍵的專案是node_modules目錄(巨大!)和.env檔(敏感資料!)。


  1. 安全基線

我們有一些敏感訊息,這些資訊永遠不應該提交到原始碼管理(例如 GitHub)。這些資訊包括 API 金鑰、資料庫密碼以及不同環境的特定配置設定。這就是環境變數的作用所在,例如.env頁:

DB_HOST=localhost
DB_PORT=5432
API_KEY=my_super_secret_key_12345

非常重要!請記住始終將.env檔案包含在.gitignore中❗這可以確保您的機密資訊保持本地安全。


結論❤️

到目前為止,一切看起來都很簡單!當然,我會在下一篇文章中繼續深入探討如何建立你的第一個自己的伺服器

我致力於在這裡與大家分享我的學習成果,既是為了那些想要回顧的人,也是為了我自己——正如他們所說,透過向別人解釋,你可以學得最快。

我真的很高興踏入後端的世界。這感覺就像一個新的開始,開闢了新的道路,真正激發了我的好奇心。如果你正在閱讀這篇文章,那麼你要么已經熟悉 Node.js,要么正在計劃學習它,所以你應該為你現在的水平感到自豪。你做得很好,而且你正處於你應該達到的水平!繼續編碼!

我強烈建議您也檢查此處的文件。

不要忽視官方文件!工具和快速搜尋可以滿足即時需求,但文件才是學習 Node.js 所需的完整官方背景資訊。

如果你喜歡這篇文章,請留言或留言❤️!我真的很感激你花時間閱讀我的作品。

祝你好運,編碼愉快! 🤗



原文出處:https://dev.to/cristea_theodora_6200140b/from-zero-to-start-the-nodejs-fundamentals-you-need-to-know-part-i-32an


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝22   💬9   ❤️6
601
🥈
我愛JS
📝4   💬14   ❤️7
271
🥉
御魂
💬1  
3
#4
2
#5
1
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付