如果上面的問題都答得出來,恭喜你,你有UI的基本概念,請繼續努力。

但如果答不出來,但曾經看過LLM寫過類似的東西⋯⋯那就代表你還可以從LLM的code裡面學到一點什麼東西。學會這種概念對成為Designer或Developer會很有幫助。就算沒有興趣作為正職,至少在未來Vibe Coding會更有效率,成果也會更令人滿意。

這種流程在Vibe Coding出現之前叫Code Review,由reviewer大致看過程式碼修改。所有軟體團隊(註1)在批准修改前都會有類似流程:

  1. 確認準備上線/釋出的程式符合需求、沒有明顯bug、架構合理
  2. 確保程式碼在未來不會太難修改(技術債)
  3. 如果不太確定某個地方為什麼要這樣寫,reviewer應該要提出疑問

在Vibe Coding出現之後,1可能可以交給LLM執行,2可能也可以(個人嚴重質疑,註2)。但最重要的3永遠不可能,LLM的能力再強也不可能。

不是因為LLM找不出問題,是因為3是一種學習過程。藉由提問,reviewer可以學會自己不懂的東西,reviewee也有機會從reviewer的角度學到不同觀點、或是更好的做法。

有些團隊中甚至會有讓新人負責大部分Code Review的習慣,讓新人了解現有系統、了解團隊習慣、mindset、或是交流新的觀點、想法。

所以,可以的話LLM跑完之後的diff不要直接accept/commit。

多看一點,從中學一點什麼,有問題就問LLM,如果知道更好的做法寫進CLAUDE.md、CONVENTION.md、或任何背景prompt檔案。

註1:實際上不是所有公司都會有這種習慣,大部分接案公司其實不在意,比較老的軟體公司(10+年)可能也不會有。這類公司通常也不太在意員工的職涯,因為資深員工離職造成的知識斷層也會比較嚴重。如果目前你或身邊的人剛好在這種環境,快逃。

註2:目前的LLM還是會有嚴重的fixation issue。Gemini Flash系列跟GPT全系列都很容易卡在之前的對話紀錄中,看不出自己生成回應的問題。Anthropic家的模型表現得稍微優異一點,但要一口氣跳好幾步找出最佳解還是有困難。這種fixation搭配training data bias,我個人不覺得LLM寫的code給LLM review是好主意