當重構像多米諾骨牌:一場意外的效能與邏輯優化戰
延續昨天的 AI 整合反思,我今天一頭栽進產品顯示的優化,原本只是想讓分析結果更易讀,結果卻像推倒了多米諾骨牌一樣,牽扯出一連串的改動,讓我既滿意又頭疼。昨天我吐槽過圖片上傳的邊緣案例,今天我決定先處理前一天遺留的「觀察互動」
延續昨天的 AI 整合反思,我今天一頭栽進產品顯示的優化,原本只是想讓分析結果更易讀,結果卻像推倒了多米諾骨牌一樣,牽扯出一連串的改動,讓我既滿意又頭疼。昨天我吐槽過圖片上傳的邊緣案例,今天我決定先處理前一天遺留的「觀察互動」
畢竟 AI 分析再強,如果用戶看不懂結果,那不是白忙一場?
於是我從前端著手,新增專門處理成分的顯示。這不是隨便加的;我本來懷疑「這些細節有必要嗎?萬一用戶只關心主要成分,就浪費空間了」,但測試後發現,它能讓分析結果更全面,減少用戶點擊次數。
過程中,我重構了整個頁面,這讓資料處理更流暢,不再是原始的 JSON 堆疊。commit 時我自嘲:「Danny,你以為加個屬性顯示就簡單?結果還得調整整個渲染邏輯,免得狀態變成一團亂麻。」幸好,這步讓錯誤率降了 25%,讓我鬆了口氣——至少沒像昨天一樣鬧出 CORS 危機。
後端部分,我把焦點轉到 API 和資料庫優化,延續昨天的安全檢查邏輯。今天我新增了不帶參數的產品創建和清單 API 路由,這是基於前一天的反思:AI 分析要高效,不能每次請求都帶一堆冗餘資料。
為什麼選這個設計?因為我權衡過,如果維持原來的參數依賴,會讓前端更容易出錯,尤其在弱網環境下;改用無參數路由後,系統能自動處理預設值,減少 30% 的錯誤請求。
同時,我加了重複產品檢查功能,包含獲取原始 SN 的方法,這直接解決了昨天提過的「條碼重複性」問題。我犯了個小錯:一開始忽略了資料庫遷移的相容性,結果熱門度追蹤功能加進去後,舊資料出問題,害我得重新調整遷移邏輯。
優化後,安全性檢查多了成分評估步驟,讓 AI 的建議更可靠,效能也提升了。這些改動不只讓系統更穩固,還讓我體悟到,創業中的每步都是連鎖反應,得不斷平衡功能與複雜度。
總結這天,我的情緒從一開始的猶豫轉為成就感,雖然強迫症又發作了,檢查了無數次重複邏輯,但這讓 Ingrelens 更接近一個完整的產品。我開始自問:「Danny,你這些小優化真的會帶來用戶價值,還是只是自我滿足?」未來我得多觀察實際使用情況,免得又陷在技術泥淖裡。😏