這回主要使用Typescript時做一個todolist,以強型別方式規範資料,並操作CRUD
以過往實作經驗搭配AI撰寫,在職場正式專案上也很通用的做法
功能
- 新增(create)
- 查詢(readAll, readById)
- 更新(update)
- 刪除(delete)
- enum 狀態對應文字取得(getStatusName)
優點
1.可讀性高:
透過 StatusCode.Done、StatusCode.Pending 等命名,
代碼一目了然,比單純用 1、2、3 更好理解。
反向查詢文字 StatusCode[status] 讓狀態展示更友善。
enum 支援數字 ↔ 字串互轉,
程式內可用數字節省空間,UI 顯示可用文字增強可讀性。
2.維護方便:
CRUD 邏輯封裝在 TodoManager 類別中,讓資料操作統一管理,易於擴展與維護。
3.封裝良好:
todos 陣列設為私有 (private),外部只能透過方法操作資料,
4.型別安全:
status 欄位被定義成 StatusCode enum,
只能接受預先定義的數值(1 | 2 | 3),避免亂輸入或寫錯字串。
編譯器會檢查不合規的狀態賦值,降低執行錯誤風險。
1 | // 狀態 enum |