為什麼 ATM 會拒絕吐鈔票給你?
想像一下,如果你去提款機 (ATM) 想要領一萬塊錢,但你的戶頭裡面只有一百塊。如果你是寫這台提款機程式的工程師,你會怎麼寫? 你總不可能寫一行指令:「不管怎樣,就吐出一萬塊給他」吧?如果這樣寫,這家銀行隔天就倒閉了。
在真實世界中,所有的商業邏輯都充滿了「條件判斷」。
- 如果 客戶的餘額大於等於一萬塊,就 吐出鈔票,並且扣除一萬塊餘額。
- 否則 (不然的話),就 在螢幕上顯示「餘額不足」,並且把提款卡退出來。
這種「如果...就...;否則...就...」的邏輯,在程式語言的世界裡,有一個統一的名稱,叫做 if-else 條件判斷式。
這是賦予你的程式碼「大腦」與「判斷力」的最關鍵技術。
傳統程式語言的痛:括號地獄與縮排惡夢
在 Vibe Coding 時代之前,初學者學習 if-else 通常會面臨一場語法災難。
如果你學的是 JavaScript,你要寫一堆大括號跟小括號:
if (balance >= 10000) {
dispenseCash(10000);
balance = balance - 10000;
} else {
showError("餘額不足");
ejectCard();
}
如果你少打了一個 },整個程式就會大崩潰,跑出一整頁的紅字報錯。
如果你學的是 Python,雖然沒有大括號,但你必須嚴格遵守「縮排 (Tab/空白鍵)」:
if balance >= 10000:
dispense_cash(10000)
balance = balance - 10000
else:
show_error("餘額不足")
eject_card()
如果不小心多按了一個空白鍵,Python 就會無情地罷工。
對於非本科系的新手來說,把時間浪費在抓「少了一個括號」或是「多了一個空白鍵」這種事情上,是非常消磨熱情的。
Vibe Coding 實戰:用白話文寫商業邏輯
在 Vibe Coding 的世界裡,我們不再去死背這些語法。我們專注於「商業邏輯」的設計。
你只要會講人話,AI 就會幫你把完美無瑕的 if-else 寫出來。
讓我們來挑戰一個更複雜的電商購物車結帳邏輯:
【電商 VIP 折扣判斷 Prompt】 我正在開發一個購物車結帳系統 (請用 JavaScript 幫我寫一個 function)。 我們的折扣規則非常複雜,請幫我轉換成程式碼:
- 首先檢查客人的購物車總金額 (
totalAmount)。- 如果 總金額小於 500 元,不僅沒有折扣,還要加上 60 元的運費。
- 如果 總金額在 500 元(含) 到 2000 元之間,免運費,但沒有折扣。
- 如果 總金額大於等於 2000 元,請檢查客人的身份 (
isVip)。- 如果 他是 VIP,整筆訂單打 8 折 (乘以 0.8) 再免運費。
- 如果 他不是 VIP,但金額滿 2000 了,就打 9 折 (乘以 0.9) 再免運費。
- 請最後回傳 (return) 顧客實際上要付多少錢。
AI 產出的完美邏輯樹:
function calculateFinalPrice(totalAmount, isVip) {
let finalPrice = 0;
// 情境 1:總金額小於 500 (要加運費)
if (totalAmount < 500) {
finalPrice = totalAmount + 60;
console.log("未達免運門檻,加收 60 元運費。");
}
// 情境 2:總金額在 500 到 1999 之間 (免運,無折扣)
else if (totalAmount >= 500 && totalAmount < 2000) {
finalPrice = totalAmount;
console.log("達免運門檻,無折扣。");
}
// 情境 3:總金額大於等於 2000 (開始判斷 VIP)
else {
if (isVip) {
finalPrice = totalAmount * 0.8;
console.log("VIP 尊榮 8 折優惠!並享免運費!");
} else {
finalPrice = totalAmount * 0.9;
console.log("滿額 9 折優惠!並享免運費!");
}
}
return finalPrice;
}
你看!這就是所謂的「巢狀判斷 (Nested If-Else)」。在 else 裡面又包了一層 if-else 來判斷是不是 VIP。
如果請初學者自己手寫這段邏輯,大約有 80% 的機率會因為大括號放錯位置而導致程式算錯錢。
但在 AI 的輔助下,你只要把中文規則條列清楚,它就能產生 100% 正確且附帶完整註解的高階程式碼。
結語:工程師的價值在於「考慮周全」
有了 AI 的幫助,你再也不需要擔心語法錯誤。 但這並不代表你不需要思考。
一個優秀的 Vibe Coder,他的價值在於「有沒有想到極端情況 (Edge Cases)」。
例如:如果傳進來的 totalAmount 是一個負數 -100 怎麼辦?程式會不會真的退錢給客戶?
這時候,你就要在 Prompt 裡面加上防禦機制:
「請先檢查總金額是否小於 0,如果是,請直接拋出錯誤『金額異常』,不要繼續執行後續邏輯。」
在下一章中,我們將學習程式語言中最有效率、也最像血汗工廠的神奇技術:迴圈 (Loops)。看看如何用兩行程式碼,瞬間處理一萬筆資料!
🎁 [VIP 專屬加碼] Vibe Coding 實戰演練與商業思維
在學習完基礎的程式語法後,很多人會問:「我懂了迴圈跟判斷式,但我還是不知道怎麼接案賺錢啊?」 這就是傳統填鴨式教育的盲點。傳統課程只教你「文法」,卻不教你怎麼寫出一篇「賣錢的文章」。
身為 Vibe Coder,你必須具備以下三個核心商業思維,這將是你未來接下 5 萬元以上專案的底氣:
1. 永遠先想「商業價值」,再想「技術實作」
當客戶說:「我要一個登入系統」時。
- 初階工程師的反應:開始想我要用什麼資料庫、用什麼雜湊演算法來加密密碼。
- Vibe Coder 的反應:問客戶:「這個登入系統是給誰用的?如果是給一般消費者,我們應該直接串接 LINE Login 或 Google 登入,因為這樣轉換率最高,而且你不用擔心密碼外洩的資安風險。」 你看出來了嗎?你不需要寫半行密碼加密的程式,但你幫客戶創造了更高的轉換率。這就是價值。
2. Cursor 除錯 (Debug) 的進階詠唱法
在真實開發中,你一定會遇到 Error。當畫面上出現紅字時,請遵循以下步驟:
- 不要慌張:Error 是電腦在跟你溝通,它不是在罵你。
- 複製完整錯誤:把終端機或瀏覽器 Console 裡的錯誤訊息,連同上下文「一字不漏」地複製下來。
- 附上你的企圖:在 Cursor 裡面輸入:
「我正在嘗試建立一個迴圈來渲染商品列表,但遇到以下錯誤:(貼上錯誤訊息)。請幫我分析這是資料格式不對,還是語法寫錯?並提供修正後的程式碼。」 當你給予足夠的背景資訊,AI 幫你抓蟲的命中率將從 50% 飆升到 99%。
3. 如何把這堂課的知識變成報價單上的服務?
你現在懂了基礎的 JS/Python。你可以開始在 Upwork 或是 PTT 上尋找這類型的案子:
- 「需要幫忙把 100 份 Excel 的資料整理合併。」 (使用 Python 迴圈)
- 「需要寫一個簡單的腳本,每天檢查網站有沒有當機。」 (使用 JS 判斷式)
這種案子對資深工程師來說太小,他們不想接;但對傳統行政人員來說太難,他們做不到。這就是你的藍海市場。 你可以大膽報價 3000 ~ 5000 元,然後花 10 分鐘用 Cursor 寫完收工,時薪高達 30000 元!
記住,你賣的不是程式碼,而是幫客戶節省的時間。 帶著這個思維,繼續挑戰進階課程吧!