這 24 條法則凝聚了軟體工程前人的血淚經驗,涵蓋專案管理、程式碼品質、測試策略、維護哲學等核心領域。本文逐條深度解析,幫助開發者內化為日常開發指導原則。
系統不可出現未處理的致命錯誤。需建立完善的異常處理機制、看門狗、優雅降級策略。
順序:使用者手冊 → 說明書 → 線上說明 → 原始碼。倒逼需求澄清,減少返工。
未做 RFA 專案工期通常翻倍。量化風險、優先攻克高風險模組。
核心價值在設計、測試、文檔。過度聚焦寫碼是本末倒置。
包含單元、整合、系統、驗收測試。自動化測試覆蓋率應成關鍵指標。
凍結需求基線,杜絕範圍蔓延。簽署代表雙方共識。
盡早暴露技術難題,贏得緩衝時間。延後等於賭博。
識別專案關鍵路徑,資源聚焦瓶頸環節。時間管理的核心。
解釋「為什麼」而非「做什麼」。複雜演算法、業務規則、副作用必註。
發生什麼、用戶能做什麼、系統下一步、錯誤代碼行號。輔以時間、用戶、環境上下文。
自動寫入日誌/資料庫/事件檢視器,支援事後根因分析。
呼叫三次 → 封裝函式。一次兩次先忍,三次必重構。平衡 DRY 與過度設計。
除選單/錯誤陷阱,函式僅一入一出。簡化控制流,利於靜態分析與除錯。
變數/函式命名即文檔。calculateUserTax() 勝過 func1() + 註解。
實體關聯對應業務關聯。避免孤立資料島,維護參考完整性。
優先選擇理論最優解,再按工程約束調整。過早優化是萬惡之源。
測量先行,優化最熱點 20% 程式碼解決 80% 效能問題。
所有設計決策以「六個月後好不好改」為判準。可讀性 > 炫技。
若功能簡單到一張卡片能寫完,別寫成系統。腳本/工具/設定檔更適合。
生產力優於效能。團隊熟悉度、生態庫、部署便利性綜合考量。
API 簽名、變數拼寫、配置鍵值。拼寫錯誤是最低級卻最隱蔽的 Bug。
清單(清單、待辦、檢查清單)持續演進。接受不完美,持續改進。
真正難題往往隱藏在假設背後。跳出框架思考,質疑前提條件。
成熟規範(編碼標準、流程、架構決策)讓團隊專注業務創新而非瑣碎爭論。
這 24 條不是教條,而是導航燈。根據專案規模、團隊成熟度、業務屬性靈活取捨,方得其精髓。