Appearance
Daemon 模式
一個程式在背景持續運行(background process),不需要使用者直接操作,通常用來提供服務或監聽事件。
1️⃣ Daemon 的基本概念
Daemon(守護程序)是指:
- 在 背景執行
- 長時間運行
- 等待事件或請求
- 通常在 系統啟動時啟動
它不會像一般程式一樣啟動 → 執行 → 結束,而是會一直運作。
常見用途:
- 提供 API
- 處理排程
- 監聽訊息
- 系統服務
pwsh
就是 windows terminal 的 powershell
WebHook
Github Repo Webhook 當作範例:
當你的 repository 發生某個事件(例如 push、PR、issue), GitHub 會自動發送一個 HTTP POST 請求到你指定的網址(你的 server)。
🔔 Webhook 的核心作用
👉 讓 GitHub 主動通知你的系統
而不是你一直去問 GitHub:「有沒有新 commit?」
🧠 運作流程
text
1️⃣ 有人 push commit
2️⃣ GitHub 觸發 push event
3️⃣ GitHub 發送 JSON 到你的 Webhook URL
4️⃣ 你的後端收到資料後做處理🔄 Webhook vs 傳統輪詢(Polling)
| 方式 | 解釋 | 缺點 |
|---|---|---|
| Polling | 每 10 秒問 GitHub 有沒有更新 | 浪費資源 |
| Webhook | 有事件才通知你 | 更有效率 |
👉 Webhook 是「事件驅動架構(Event-Driven Architecture)」的核心概念。
🛠 Webhook 實際用途
1️⃣ CI/CD
當有人 push → 自動建置部署
2️⃣ 通知系統
當 PR 開啟 → 發到 Discord
3️⃣ 自動翻譯 commit
當 push → 呼叫翻譯 API → 發到 Telegram
4️⃣ 寫入 ELK 監控
你之前有玩 Elasticsearch,Webhook 很適合串 log pipeline。
🎯 一句話理解
Webhook = GitHub 主動把「發生了什麼事」推給你的系統
ContentScript (內容腳本)
在瀏覽器擴充功能(Browser Extension)的架構中,Content Script(內容腳本) 是扮演「橋樑」角色的關鍵組件。
簡單來說,它是擴充功能中唯一可以直接訪問並操作網頁內容的部分。
核心定義與功能
Content Script 是由擴充功能注入到特定網頁中的 JavaScript 檔案。它的主要任務是讀取、修改或增強使用者正在瀏覽的網頁。
- 操作 DOM:可以像網頁原本的腳本一樣,修改 HTML 元素、更改 CSS 樣式、隱藏廣告或是添加新的按鈕。
- 監聽事件:捕捉使用者的行為,例如點擊、捲動或輸入。
- 讀取數據:抓取網頁上的文字、圖片連結或特定的資料。
重要特性:隔離世界 (Isolated World)
這是 Content Script 最獨特的一點。為了安全與穩定性,瀏覽器使用了**「隔離世界」**機制:
- 共享 DOM:Content Script 和網頁本身的 JavaScript 可以看到同一個 HTML 結構。
- 不共享變數:Content Script 無法存取網頁腳本定義的 JavaScript 變數或函數,反之亦然。這樣可以防止擴充功能意外搞壞網頁的功能。
- 權限限制:Content Script 只能使用部分的擴充功能 API(例如
chrome.runtime.sendMessage),若要執行存取書籤、管理分頁等高權限操作,必須與 Background Script (Service Worker) 通訊。
WBS
WBS 指的是 Work Breakdown Structure(工作分解結構)。它是一種專案管理工具,用來把大型、複雜的專案分解成可管理的小單位或工作包(work package),方便計畫、分配資源、估算成本和追蹤進度。
簡單說,就是把「大工程拆小塊」的概念。