作戰計畫

R 防禦式程式設計

Dr. Colin Gillespie

Jumping Rivers

從小處開始

小部隊也能創造大成果。

孫子,《孫子兵法》

R 防禦式程式設計

檔名大有文章?

  • 所有 R 指令稿都存成檔案
    • 檔名很重要
    • 檔名一致性更重要
      • 可以訂哪些規則?

R 防禦式程式設計

多個單字

檔名常含多個單字

例如

  • cluster-analysis.R
  • load-survival-data.R
  • plot-residuals.R
R 防禦式程式設計

空白、連字號、底線?

簡單問題:單字該如何分隔?

  • 空白:analysis clustering.R
  • 底線:analysis_clustering.R
  • 連字號:analysis-clustering.R

想一想並回答兩個問題

  • 你現在用哪個?
  • 你「應該」用哪個?
R 防禦式程式設計

檔名中的空白

  • 別用它們
  • 真的,別用

在檔名和目錄用空白很糟

  • 放上網後 file name.R 會變成 file%20name.R
  • 在命令列,含空白的檔名要加引號
  • 正規表示式也更麻煩
  • 要分辨以下差異很難:
    • file name.R - 一個空白
    • file name.R - 兩個空白
R 防禦式程式設計

連字號或底線

底線有幾個「小」問題

  • Google 會把 file_name 視為單一單字
    • 所以只搜 file 不會中
  • 正規表示式字元 \w 會把 _ 視為字元

連字號沒有這些問題

坦白說:

  • 我通常用底線
  • 但我正試著改用連字號
R 防禦式程式設計

一起來練習吧!

R 防禦式程式設計

Preparing Video For Download...