本文為 Delphi 程式碼規範系列第三部分,涵蓋各面板組件標準簡稱對照表(Internet、Data Access、Data Controls、Decision Cube、QReport、Dialogs、Win31、Samples、ActiveX、Midas)以及原始碼修改歷史管理規範。
| 組件 | 簡稱 |
|---|---|
| TClientSocket | csk |
| TServerSocket | ssk |
| TWebDispatcher | wbd |
| TPageProducer | pp |
| TQueryTableProducer | tp |
| TDataSetTableProducer | dstp |
| TNMDayTime | nmdt |
| TNMEcho | nec |
| TNMFinger | nf |
| TNMFtp | nftp |
| TNMHttp | nhttp |
| TNMMsg | nMsg |
| TNMMSGServ | nmsg |
| TNMNNTP | nntp |
| TNMPop3 | npop |
| TNMUUProcessor | nuup |
| TNMSMTP | smtp |
| TNMStrm | nst |
| TNMStrmServ | nsts |
| TNMTime | ntm |
| TNMUdp | nudp |
| TPowerSock | psk |
| TNMGeneralServer | ngs |
| THtml | html |
| TNMUrl | url |
| TSimpleMail | sml |
| 組件 | 簡稱 |
|---|---|
| TDataSource | ds |
| TTable | tbl |
| TQuery | qry |
| TStoredProc | sp |
| TDatabase | db |
| TSession | ssn |
| TBatchMove | bm |
| TUpdateSQL | usql |
| 組件 | 簡稱 |
|---|---|
| TDBGrid | dbg |
| TDBNavigator | dbn |
| TDBText | dbt |
| TDBEdit | dbe |
| TDBMemo | dbm |
| TDBImage | dbi |
| TDBListBox | dblb |
| TDBComboBox | dbcb |
| TDBCheckBox | dbch |
| TDBRadioGroup | dbrg |
| TDBLookupListBox | dbll |
| TDBLookupComboBox | dblc |
| TDBRichEdit | dbre |
| TDBCtrlGrid | dbcg |
| TDBChart | dbch |
Decision Cube: dcb/dcq/dcs/dcp/dcg/dcgr
QReport: qr/qrsd/qrb/qrcb/qrg/qrl/qrt/qre/qrs/qrm/qrrt/qrdr/qrsh/qri/qrdi/qrcr/qrp/qrch
Dialogs: OpenDialog/SaveDialog/OpenPictureDialog/SavePictureDialog/FontDialog/ColorDialog/PrintDialog/PrinterSetupDialog/FindDialog/ReplaceDialog (建議完整命名或 od/sd/opd/spd/fd/cd/pd/psd/fd/rd)
Win31: dbll/dblc/ts/ol/tnb/nb/hdr/flb/dlb/dcb/fcb
Samples: gg/cg/spb/spe/dol/cal/ibea
ActiveX: cfx/vsp/f1b/vtc/grp
Midas: prv/cds/qcds/dcom/olee/sck/rms/mid
已納入配置管理的程式檔案,檔頭必須包含修改歷史區塊,每次修改記錄:
{
修改歷史:
2024-01-15 張三 BUG-1024 修正匯出 Excel 日期格式錯誤,調整 FormatDateTime 格式字串
2024-02-20 李四 REQ-2056 新增多語系支援,重構字串資源載入機制
2024-03-10 王五 REFACTOR 提取共用驗證邏輯至 TValidator 單元,消除重複代碼
}
// 修改人:張三,時間:2024-01-15,說明:新增日期格式參數
ExportOptions.DateFormat := 'YYYY-MM-DD';
// 修改結束
// 修改人:張三,時間:2024-01-15,說明:移除舊版硬編碼格式
// ExportOptions.DateFormat := 'YYYY/MM/DD';
// 修改結束
// 修改人:張三,時間:2024-01-15,說明:統一日期格式為 ISO 8601
// ExportOptions.DateFormat := 'YYYY/MM/DD';
// 修改結束
// 修改人:張三,時間:2024-01-15,說明:統一日期格式為 ISO 8601
ExportOptions.DateFormat := 'YYYY-MM-DD';
// 修改結束
| 需求 | 傳統人工方式 | 現代自動化工具 |
|---|---|---|
| 縮排/大小寫/空格 | 人工檢查 | DelphiFormatter (開源)、Jedi Code Format (JCF)、IDE 內建 Format Source (Ctrl+D) |
| 命名規範檢查 | Code Review | Pascal Analyzer、SonarQube Delphi Plugin |
| 修改歷史追蹤 | 手寫檔頭 | Git Blame / History、Git Commit Message 規範 (Conventional Commits) |
| 團隊共享設定 | 文件規範 | .editorconfig、共享 JCF 設定檔、Git Hooks 強制格式化 |
建議團隊棄用手寫檔頭修改記錄,改用 Git 提交訊息規範 (如 feat: 新增匯出功能, fix: 修正日期格式) 搭配 git log --oneline 自動生成變更日誌,並配置 Pre-commit Hook 執行 JCF 格式化,確保倉庫代碼風格始終一致。