在遊戲裡,進度條是最常見的元素之一:血量、魔力、經驗、探索進度…到處都需要它。
與其在不同地方重複刻一條條死板的條件樣式,我更想要一個 通用、可擴展 的 component。
一個「好用」的進度條,需要哪些設計?
專案裡需要很多種進度條(血量條、經驗條、探索條…)。
如果每一條都硬寫 class,程式碼會到處複製,維護麻煩。
有些情境不是單純的數值條:
先列出最想要的能力,然後一一判斷要不要做進去:
為了不讓元件綁死在單一設計上,所以採用了 組合式 class 設計:
開發元件時,我們需要注意「壞數據」會怎麼表現:
建立這個 ProgressBar 的過程,其實就是在思考: