這一週我在改一件事:程式遇到狀況時,要老實告訴使用者發生了什麼。不管是斷網、存檔失敗,還是對方網站在排隊,畫面都不該給出錯誤或誤導的說法。

斷網和存檔失敗,畫面要說實話並給重試鍵

Nailora 是一個幫人找美甲師、預約美甲的 App,第一版正在蘋果審查中。我先做了一輪稽核,專找「看起來沒事、其實有事」的地方。

例如斷網時評價頁會一直轉圈,有些存檔失敗時畫面卻顯示成功。這就像跟店員說要退貨,店員笑著說好,其實什麼都沒辦。我把這些地方改成明確顯示「連線失敗」並附上重試,存檔失敗也直接說失敗。

下次你測試自己的作品,可以故意斷網,把每個會轉圈、會存檔的畫面走一遍。成功訊息必須對應到真的成功。

店家改完先預覽,不必存進去才知道長怎樣

Nailora 的店家端現在多了「預覽」鈕。店家編輯店家資料、菜單、美甲師、預約設定時,按下去就能用還沒儲存的內容,看顧客眼中的畫面。頂端有黃色橫幅提醒這是預覽,內容只暫存在手機記憶體,不會寫進資料庫。

預約流程也能整段試走,但最後一步不能真的送出。這像是先試穿再決定買不買。收藏、送出這類會真正寫入的按鈕,在預覽中全部擋下。

下次你做「試做」功能,要把暫存資料和正式資料分開,並把會真正生效的按鈕關掉。否則試走一不小心就變成真的下單。

對方網站在排隊或關店,工具要照實回報

plurkpost 是我用來把日本商品網頁整理成噗浪貼文的工具。有些商店在人多時會把訪客丟進排隊頁,或顯示店家暫時關閉。工具卻回報「可能已下架或網址錯誤」,甚至叫我回報爬蟲失效。這像是到店門口看到「今日公休」,卻回報店址寫錯。

現在工具認得這兩種狀況,畫面直接寫出原因,並隱藏回報失效的按鈕。批次載入遇到時會整批停下,不再一件件重試。

下次你自己包裝錯誤訊息時,要把原始原因一路帶到畫面。不確定的猜測不要加進去。

接下來

  • Nailora 1.1.0 要等第一版審查結果,再進實機驗收。
  • 行事曆小月曆是否要做,還在等我裁決。
  • 翻譯要不要改用 Claude,尚未決定,目前仍用 Gemini。

本篇由跨專案自動彙整產生,素材為 2026-10-19 之後 6 個專案的提交紀錄與 0 則知識投遞。