# 第六堂:NPM 與模組整合 * 記得錄影 ## Node.js 後端環境建置 * 安裝 [Node.js](https://nodejs.org/en) * Node 核心:V8 引擎 * 透過 Node.js 執行 JS 檔案 ``` console.log("hello world"); ``` ## Node.js 模組化教學 1. module.exports 2. exports ## 網路請求([MDN](https://developer.mozilla.org/zh-TW/docs/Web/HTTP/Methods)) ![截圖 2025-01-21 凌晨12.37.08](https://hackmd.io/_uploads/ryxaig3P1l.png) > [出處](https://medium.com/@lokeshchinni123/django-request-and-response-lifecycle-fae8f6467e3d) ## 開啟 Node 伺服器範例程式碼: ``` const http = require("http"); http.createServer(function(request,response){ response.writeHead(200,{"Content-Type":"text/plain; charset=utf-8"}); response.write("<h1>標題</h1>") response.end() }).listen(8080); ``` ## NPM 介紹([官網](https://www.npmjs.com/)) * Node 環境初始化:`npm init` * 安裝 NPM 套件:[express](https://www.npmjs.com/package/express) `npm -v` :觀看 NPM 版本 `npm init` :新增 package.json `npm install [模組名稱][安裝位置]` :安裝 NPM 模組,安裝位置常用屬性如下: 1. `-g` 全域安裝 2. `--save` 安裝模組並寫入 package.json 的 "dependencies" 3. `--save-dev` 安裝模組並寫入 package.json 的 "devDependencies" `npm list` :顯示安裝的 NPM 列表 `npm uninstall [模組名稱]` :刪除專案裡的 NPM ### NPM 安裝差異 --save node應用程式上線會用到的npm --save-dev * jshint * mocha ### 二月 Node.js 進度表 1. [API 文件表](https://liberating-turtle-5a2.notion.site/2025-API-82b9600c123447468d8d4de8c2d35e87?pvs=4) 2. [線稿圖](https://miro.com/app/board/uXjVLbiDml0=/?share_link_id=404709829822) ::: spoiler ![fitness (2)](https://hackmd.io/_uploads/Hy-NH-2v1l.png) ::: ### 過年任務 ### **環境安裝,觀看此[章節](https://courses.hexschool.com/courses/2025-node-js/lectures/59634475) 截圖您的 DBeaver 與 Docker Desktop ![MTc1Mzc2NDQzNDQ4MzQ1Mjg0NDc=_2024-11-14T14_37_06Z](https://hackmd.io/_uploads/HypGGbnPyl.png) ## 學習路線 1. 過年期間先完成前三個主線任務為第一優先 2. 觀看 Node 章節,並做完 [Todolist RESTful API kata](https://courses.hexschool.com/courses/2025-node-js/lectures/58664164) 3. 觀看 [資料庫章節](https://courses.hexschool.com/courses/2025-node-js/lectures/58664069) 4. 若要建議的話 Node 跟資料庫可以先看,最後再看 Docker 就好