跳到內容

計算機程式設計/標準與最佳實踐

來自華夏公益教科書

什麼是“最佳實踐”

[編輯 | 編輯原始碼]

計算機程式設計中的標準是指已被認為可接受的程式設計方法,並被推薦為應採用的方法。就像GAAP對會計一樣,程式設計標準允許程式設計師在編寫程式碼時使用共同的基礎。緊密聯絡著程式設計標準,最佳實踐僅僅是指推薦的程式碼編寫方法。

本節的目標

[編輯 | 編輯原始碼]

本節的目標是為初學者提供一個清單,使他們能夠編寫出像樣的程式碼,並告訴初學者這些東西的存在,以便他們可以進一步閱讀這些內容並確定是否想使用它們。

特定語言的最佳實踐

[編輯 | 編輯原始碼]
維基程式碼 標準 最佳實踐 模板
C 頁面在這裡 無頁面 無頁面
C++ 頁面在這裡 頁面在這裡 無頁面
C# 無頁面 無頁面 無頁面
Java 無頁面 頁面在這裡 無頁面
Perl 無頁面 無頁面 無頁面
Python 無頁面 PEP 8 無頁面
Makefile 無頁面 無頁面 無頁面
Apache Ant 無頁面 頁面在這裡 無頁面
JavaScript 無頁面 頁面在這裡 無頁面
Visual Basic 頁面在這裡 無頁面 無頁面

與語言無關的最佳實踐

[編輯 | 編輯原始碼]
  • 使用版本控制系統。[1][2][3]. 最常見:git
  • 建立一個 License.txt 檔案
  • 使用合適的構建系統,例如 Meson、CMake、MakefileApache Ant、Gradle、Buildr...
  • 使用程式碼格式化工具。考慮配置您的編輯器,以便每次儲存檔案時都執行格式化工具。
  • 使用文件生成器
  • 啟用編譯器警告。
  • 修復所有編譯器警告。
  • 如果您的語言有好的程式碼 linter,請執行它們並修復所有警告。
  • 擁有適當數量的單元測試。
  • 使用 404 連結檢查器來確保您的文件中沒有 404 連結。
  • 如果您使用的是記憶體不安全的語言 - 使用ubsan執行您的測試。
  • 如果您的程式碼的一部分可以進行模糊測試,請進行模糊測試。

重要的是,您不應該僅僅執行一次單元測試、模糊測試器、linter、程式碼格式化工具和 404 連結檢查器,而應該在每次更改程式碼時都執行它們。單元測試的目的是不是檢查程式碼是否有效,而是確保在您更改程式碼時,程式碼仍然有效。也許可以將這些工具新增到您的pre-commit hooks中。大多數專案都會在其伺服器上配置,以便在有人建立拉取請求時執行這些工具。

有爭議的與語言無關的最佳實踐

[編輯 | 編輯原始碼]

以下是一些開發人員認為是最佳實踐,而另一些開發人員則認為是壞實踐的做法。

進一步閱讀

[編輯 | 編輯原始碼]


華夏公益教科書