Skip to Content
2|工具地圖2-2 ChatGPT 實戰:五分鐘做一個小工具

2-2 ChatGPT 實戰:五分鐘做一個小工具

開始 Vibe Coding 的第一步,我們將使用 ChatGPT 製作一個最簡單的小工具。因為 ChatGPT 最容易上手,所以選擇它作為我們的第一個體驗,來感受 AI 開發的威力。

先來看看這次的成品大概會是什麼樣子。當然,AI 每次生成的結果可能會有些微差異,不過大致上會是這樣:

我們要做一個番茄鐘計時器

  • 25 分鐘專注時間
  • 5 分鐘休息時間
  • 開始/暫停功能

步驟一:開啟 ChatGPT

  1. 前往 chat.openai.com 
  2. 登入你的帳號(免費版即可)
  3. 開始新對話

步驟二:輸入 Prompt

複製以下 Prompt 到 ChatGPT:

幫我做一個番茄鐘網頁

對,就是這麼簡單的 prompt!

我們可以先從最簡單的 prompt 開始,看看 AI 能寫出什麼樣的程式。

步驟三:測試執行

大約等幾分鐘後,ChatGPT 就會把完整的程式寫出來。如果你仔細看這個程式,它使用的語法是 HTML、CSS 和 JavaScript,這也是之後我們會詳細說明的部分。

這時候,你可以按右上角的「執行程式」按鈕,來執行 ChatGPT 生成的程式碼,看看你的成果:

image

你就可以在右邊的視窗看到 ChatGPT 幫你寫出的完整網頁。點擊按鈕後,你可以嘗試各種互動效果,看看你的番茄鐘運作得如何。

image

太棒了!你已經成功 Vibe Coding 出第一個作品,就是這麼簡單!

步驟四:優化與調整

接下來可以針對這個初步完成的番茄鐘進行優化與調整。

這時候你可能會發現:

  • 某些功能跟想像中不太一樣
  • 風格或排版還可以更好
  • 需要增加一些額外的功能

你可以繼續跟 ChatGPT 對話,例如:

  • 「新增一個設定按鈕,讓我可以調整工作時間和休息時間」

image

這時候你可能會遇到一個常見的問題:ChatGPT 很容易「改 A 壞 B」。雖然它新增了設定功能,可以調整工作時間和休息時間,但前面做好的番茄鐘全部消失,被換成一個完全不同的介面了。

image

當你請它把進度圓圈加回來時,你會發現它做得很歪,視覺效果相當糟糕。

繼續對話之後,你可能會發現作品越來越糟。這時候你可以使用「回溯」功能,返回到之前的版本:

image

或者你也可以先點擊舊版本的檔案,再回溯到指定版本:

image

為了避免「改 A 壞 B」,你可以在 Prompt 中明確指出:

「在原本的番茄鐘上,新增一個設定按鈕,讓我可以調整工作時間和休息時間,不要改動到其他地方,設定按鈕點開後會跳出一個視窗來讓我調整,並且可以儲存和關閉」

雖然成功新增了設定按鈕,沒有改動到原本的功能,但介面變得非常醜陋:

image

經過一番調整與優化後,終於成功完成了這個功能。

現在設定按鈕可以正常運作,點擊後會彈出設定視窗,風格也和原本的介面一致。但這個過程需要:測試、反饋、回溯、優化 Prompt,重複好幾次才能完成。

為什麼 ChatGPT 開發效率低?

從剛才的過程可以看出,用 ChatGPT 開發的體驗並不理想:

  • 很容易「改 A 壞 B」
  • 經常無法理解你的需求
  • 生成的程式碼品質不穩定

事實上,ChatGPT 原本並不是專門為程式開發設計的,這也是為什麼我們推薦使用 Claude Code 或其他專業的 AI 工具。

不過,如果要讓 ChatGPT 稍微做得更好,也不是完全沒有辦法。觀察剛才的開發過程,大部分時間都花在後續的修改與優化。第一個 Prompt 是最重要的,如果第一次就做對,就能節省大量時間。

如何讓 GPT 做得更好?

讓 ChatGPT 做得更好的關鍵,就是提供清晰的需求描述。下面是一個更詳細的範例,可以讓大家參考。

關於 Prompt 的技巧,之後的章節會更詳細地說明,這裡先簡單了解即可。

請幫我創建一個番茄鐘網頁應用,要求如下: 1. 使用單一 HTML 檔案(包含內嵌的 CSS 和 JavaScript) 2. 功能需求: - 預設 25 分鐘工作時間 - 5 分鐘休息時間 - 顯示剩餘時間(分:秒格式) - 開始/暫停按鈕 - 重置按鈕 - 工作/休息模式切換按鈕 - 有一個設定按鈕 - 可以跳出個 Dialog 來設定工作時間和休息時間 3. 設計需求: - 簡潔現代的介面,類似 Radix UI 風格 - 深色背景、暗色模式 - 使用漸層背景 - 圓形進度環顯示剩餘時間 - 工作模式用暖色系,休息模式用冷色系 - 按鈕要有 hover 效果 - Mobile First Design 4. 額外功能: - 顯示已完成的番茄數 - 瀏覽器標籤顯示剩餘時間

不過仔細看這個範例,你可能會看到一些不熟悉的術語:

  • 「單一 HTML 檔案」、「內嵌 CSS/JavaScript」
  • 「Radix UI 風格」
  • 「hover 效果」
  • 「Mobile First Design」

沒關係!這些術語會在後續章節一一說明。這也是本系列文章的重點:掌握技術背景知識,才能寫出更好的 Prompt

發布你的專案

雖然關於如何部署和發布專案,後面的章節會有更詳細的說明,但這裡提供一個輕量級的解決方案。

我特別為這系列文章 Vibe Coding 了一個網站:VibeWeb.me 。你可以把 HTML 程式碼上傳到這個平台,它會快速幫你把網站發布上線,並產生一個連結讓你分享給朋友。

首先,從 ChatGPT 複製生成的程式碼:

image

然後前往 VibeWeb.me ,並貼上程式碼並點擊發布

image

最後,分享給朋友!就這麼簡單!

image

別忘了將你的作品分享給我!

歡迎來信 xx0932399@gmail.com 或是我的 Threads / IG dada._.878

[!提示] 如果你的程式碼包涵 importreactexportuseStateuseEffect 等語法,代表它是使用 React 等前端框架開發的,這種程式碼無法直接貼到 VibeWeb.me 上發布。請叫 ChatGPT 幫你把程式碼轉換成純 HTML、CSS、JavaScript 的版本。 關於 React 等前端框架的介紹和使用,會在後續章節詳細說明。

開發技巧重點整理

從這個練習中,我們成功用 ChatGPT 開發出第一個小工具並發佈到網路上。來回顧一下剛剛學到的各種重點:

Prompt 撰寫技巧:

  • 第一個 Prompt 最重要,寫得越詳細越好
  • 明確指定「不要改動其他部分」避免改 A 壞 B
  • 提供具體的功能需求和設計要求

ChatGPT 操作技巧:

  • 善用「回溯」功能返回之前的版本
  • 測試功能後再進行下一步調整

小工具 Prompt 模板:

請幫我創建一個 [工具名稱] 網頁應用: 1. 使用單一 HTML 檔案 2. 功能:[列出功能] 3. 設計:[描述外觀] 4. 請提供完整程式碼

這個模板對於開發小工具已經足夠。如果之後要開發更複雜的專案,你將需要更進階的技巧。

玩玩看這些 idea 吧!

現在你已經學會了如何用 ChatGPT 做出一個簡單的工具,試試看用同樣的方法做出更多有趣的小工具吧!

  • 待辦清單
  • 擲骰子遊戲
  • 密碼產生器
  • 簡單記帳本
  • 習慣追蹤器
  • 文字編輯器
  • 心情日記

下一步

恭喜你完成了第一個工具!下一篇我們將介紹 Cursor,看看專業的 AI 編輯器能帶來什麼不同的體驗。

覺得有幫助嗎?訂閱電子報學習更多 Vibe Coding 技巧!
Last updated on