erg/doc/zh_TW/dev_guide/rust_code_guideline.md
2022-09-06 20:13:44 +08:00

1.7 KiB

Rust 代碼指南

badge

本地規則

  • 使用 log! 進行調試輸出(使用 println! 等進行輸出處理,這也是發布所必需的)。
  • 未使用或內部變量/方法(私有且僅用于特定功能)必須以 _ 為前綴。如果要避免與保留字沖突,請在末尾添加一個_

推薦代碼

  • 定義和使用特定領域的枚舉而不是數字枚舉或布爾值。
  • 將訪問修飾符保持在最低限度。即使在發布時也要優先使用 pub(mod)pub(crate)
  • 將 for 表達式中的可迭代對象顯式轉換為迭代器(for i in x.iter() 而不是 for i in x)。
  • 懶惰的評價。例如,如果 default 不是文字,請使用 unwrap_or_else 而不是 unwrap_or

不鼓勵使用代碼

  • 大量使用返回類型重載。特別是使用大量非顯而易見的 .into 的代碼。這是因為類型推斷結果可能違反直覺。在這種情況下,建議使用 from 代替。
  • 大量使用 Deref。這有效地提出了與繼承相同的問題。

根據上下文做出決策的代碼

  • 定義未使用的輔助方法。
  • 大量使用 unwrapclone。在某些情況下,沒有什么比這樣做更好的了。