[心得][英文] 如何命名「次數」變數
之前談過「數量」(參考 https://bit.ly/3elcZGT ),這次我想談談「次數」,
以及回答幾個讀者問題。
* 如何命名「次數」變數?
* 「次數」與「數量」有什麼不一樣?
* 可以用 times 嗎?
* 「計算」該用 calculate 還是 compute ?
* 「總和」 sum 與 total 有什麼不一樣?
---
* Google 簡報 https://bit.ly/3a1lDcO
* Facebook 相簿 https://bit.ly/2DHjNSx
* GitHub 討論 https://bit.ly/321ResR
---
# 先說結論
* 名詞 + Count
* numberOf + 名詞
* quantity 不適合用在「次數」上
* "times" 可以用,但建議使用更準確的字
---
# 「數量」 vs. 「次數」
上次談的「數量」聚焦在「實物」上,例如:
* 不可數名詞 : 水
* 生物 : 貓
* 物品 : 包裹
而「次數」是針對「抽象」觀念,例如:
* 動作 : 分享 (share)
* 事情 : 事故 (incident)
* 狀態 : 成功 (success)
---
# 「次數」的語法與「數量」相似
就前端來說,有至少兩種常見的格式:
* 數量 + 名詞
* 1 view 1 次觀看
* 2 shares 2 次分享(複數)
* 動作(被動) + 數量 + time(s)
* Viewed 1 time 被觀看 1 次
* Shared 2 times 被分享 2 次(複數)
就後端來說,與以前談過的「數量」語法很相似:
* 名詞 + Count
* viewCount 觀看次數
* shareCount 分享次數
* numberOf + 名詞(複數)
* numberOfViews 觀看次數
* numberOfShares 分享次數
「名詞 + quantity」 比較適合用在「數量」上,比較不適合用在「次數」上。
---
# 可以用 "times" 嗎?
可以。
然而,因為 "times" 除了「次數」,還有倍數、時間、時代的意思(倚賴上下文
脈絡來區分),我建議試著使用更精準的字,例如說:
* 安裝次數 : installCount
* (遊戲設計)傷害倍數 : damageModifier
* 登入嘗試次數上限 : loginAttemptMaxLimit
如果有不知道該怎麼敘述的「次數」,歡迎留言討論,集思廣益。
---
# 參考資料:「動作、事情、狀態」等抽象概念的英文字彙
用英文命名變數時,常會需要把中文字彙翻譯成英文。
而「翻譯實物字彙」相對地簡單,流程大致上是:
1. 列出中文字彙C
2. 利用漢英字典、機器翻譯找到對應的英文字E
3. 用 Google Image 查英文字E,看看出來的圖片是否與中文字彙C相符
然而,「翻譯抽象字彙」時就不太容易用上述第 (3) 步「用 Google Image 輔助
確認翻譯的精準度」。
這裡列出一些「次數」會使用到的字,以供參考。
## 動作
* attempt 嘗試
* click 點擊
* crash 崩潰
* install 安裝
* kill (遊戲中)擊殺
* review 評論
* revision 編修
* share 分享
* view 瀏覽、觀看
## 事情、狀態
* case 案例
* event 事件
* hit 命中
* miss 失誤
* incident 事故
* instance 實例
* occurrence (事情的)發生、存在
* success 成功
* failure 失敗
如果遇到不知道怎麼翻譯的字詞,或對某個字的使用情景有疑問,歡迎留言提問 :)
---
# 讀者提問:計算該用 calculate 還是 compute ?
先說結論:
* 這是歸納了客觀資訊,再加上主觀見解得到的結論
* 能用「計算機( calculator )」算出來的,用 calculate
* 要用「電腦( computer ) / 圖靈機」來算的,用 compute
從字典定義到語源學,我沒有找到決定性的資料可以區分 calculate 、 compute
在「計算」這個意思上有什麼不同。
* calculate 的「計算」語意出現在 1560 年代
* 其「算計、策劃」語意出現在 1650 年代
* 例如,會說 "a calculated decision" 「一個算計過的決定」,但不會說
"a computed decision"
* 其「思考、意欲、推測」語意出現在美國 1830 年代
* compute 的「計算」語意出現在 1630 年代
* 字典: make a calculation, especially using a computer 特指用電腦計算
* 非正式: 認為一件事合邏輯
* 例如,會說 "This does not compute." 「這件事不合邏輯」。
但在 calculator 與 computer 的字典定義上,有相當的分別:
* 計算機 calculator
> something used for making mathematical calculations, in particular a
> small electronic device with a keyboard and a visual display.
描述「小型電子儀器、有鍵盤、有顯示裝置」。
* 電腦 computer
> an electronic device for storing and processing data, typically in
> binary form, according to instructions given to it in a variable program.
「電腦」的字典定義提到了「計算機」沒有的特點:「能儲存資料、可變動程式指令」
是故,我的 *主觀* 解讀是:
* 能用「計算機( calculator )」算出來的,用 calculate
* 要用「電腦( computer ) / 圖靈機」來算的,用 compute
---
# 讀者提問:總和 sum 與 total 有什麼不一樣?
## 語意
* sum 是「以加法算出來的總和」,例如:「 2 + 3 + 5 的總和是 10 」。
* total 是「由一連串計算得到的總數」,例如「主餐 $60, 飲料 $20, 合計後打
9 折,總共 $72 」。
## 應用
* sum 常用在數學計算上,例如 Microsoft Excel 的 SUM 函式。
* 可以做為「總和」的變數名稱。
* total 常見於電商網站結帳時的「小計(subtotal)」或「總金額(total)」。
* 可以做為「總數」的變數名稱。
* total 也可當作形容詞,例如在遊戲設計、計算傷害值時,從基本攻擊、加乘、
抗性、命中率、暴擊率最後算出「傷害總數 "totalDamage" 」。
---
# 結語
一週探索一個觀念,一點一點學會用英文提昇程式的可讀性。
每個人都是從零開始學起的;這些題目大多來自讀者提問,我自己也學到了很多。
如果你在寫程式時有遇到英文表達上的問題,歡迎留言討論,或到《程式英文》
GitHub 討論區 https://bit.ly/321ResR 提問。
這可以幫助我把這個列表整理的更完善,謝謝 :)
--
推
推推
推
謝謝 :)
推 命名好的話 程式就好維護
十分同意 有些人是卡在「用英文表達」這一關,希望我整理的這些資料能幫上忙 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/07/2020 13:16:48推
推,學到好多
頂一個先…
有看有推
讚
推推 實用
謝謝各位 :)
推 常常有英文命名苦惱
有沒有興趣聊聊在英文上遇到的困境? :) 在這裡推文留言, PTT 站內信,或從以下管道都可以: *
https://github.com/EngTW/English-for-Programmers/issues*
https://www.facebook.com/twy30*
https://twitter.com/twy30一樣有英文苦惱的版友們,都可以來聊聊 :)
整理好其實可以出書了
目前還沒想到那麼遠 XD 目前的計畫是一週解個 2~3 題,把蒐集到的題目 (*1) 解決掉,看能不能有系統 地把「程式寫作常見英文問題」解決掉。 有任何程式寫作、軟體工程方面的英文題目都可以提出來討論,一起把這個知識庫 整理的更完善。 *1:
https://github.com/EngTW/English-for-Programmers/issues
推推
推
推推
推 很實用!!
推
推
推
推
推 感謝分享
推
推
必須推
推
謝謝分享
學習了!
感謝各位的欣賞與鼓勵 orz
※ 編輯: AmosYang (136.56.13.184 美國), 08/08/2020 03:21:02謝謝分享 很用心很有幫助
推推推
推
推~~
推
大推!
推
推
推個 覺得有趣
謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/08/2020 15:03:28推
推 常遇到
實用推
感謝用心整理
三大難題之一XD
命名真的不容易 XD
推
推
謝謝各位的鼓勵 :)
I,J,K
變數三天王 XD
※ 編輯: AmosYang (136.56.13.184 美國), 08/10/2020 08:16:22感謝分享
推
推好文
推
棒
推
推
謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/12/2020 07:05:15中推
推
推
謝謝 :)
其實就後面Cnt即可,例如getCnt, releaseCnt, delCnt越簡
單越好,而且func裏面處理完就釋放, 不要跳到別的func裏,
變數越簡單扼要越容易讓人想看code
type=
> 變數越簡單扼要越容易讓人想看code
十分同意。
cnt num size 有夠煩XD
「縮寫與否」的確是論戰的熱門題目 XD
※ 編輯: AmosYang (136.56.13.184 美國), 08/17/2020 05:57:37推推 可以在每個介紹下面寫點範例 像是 google Airb
nb style guild 會有 good bad 的舉例
同意,適當的好、壞例子能幫助讀者掌握觀念。 我會試著注意這方面,謝謝你的建議。 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/21/2020 12:27:15推
謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/29/2020 07:43:21爆
[情報] 21世紀複數次晉級總決賽的球隊消息來源: 內容: 21世紀複數次進入總決賽次數排行(後面括號為冠軍次數):93
[閒聊] 四代女團個人直拍觀看數 TOP3四代女團個人直拍觀看數 TOP3 1. aespa Winter (Step Back)74
[分享] 野手速球王 YT觀看次數來源:中職YT頻道 郭天信 MAX:143km 觀看次數:2.5萬 王勝偉 MAX:141km 觀看次數:3.4萬43
[閒聊] 2020年7月 娛樂百分百 YOUTUBE 點閱2020年7月 TOP 5 1. 07.06《凹嗚狼人殺》觀看次數:589,045次 2. 07.09《凹嗚大對抗》觀看次數:588,226次 (舞蹈賽) 3. 07.08《凹嗚狼人殺》觀看次數:492,704次 4. 07.07《凹嗚狼人殺》觀看次數:487,504次42
[乃木] 【期間限定】5期生 菅原/冨里/中西 紀錄片菅原咲月 冨里奈央 中西アルノ17
Re: [聊天] 搜內不出禮包是原創的鍋嗎看到這篇突然想到, 0.7% 平均142抽這是沒有保底的情況 有保底的話,比起沒保底的時候平均會降低,因為你現在不會抽超過300次 假設抽取次數為 N,對於這種肯定大於或等於0的隨機變數, 計算平均值有一個不錯用的公式 ∞4
[閒聊] 畫畫居然有1.5億觀看次數!無意間看到這影片,居然有1.5億觀看數 看面孔是亞洲人,名字應是華人或韓國人 可是作品網頁IG都是英文,住海外? --2
[問卦] 請教28hits的一些條件機率問題大家好 由於小弟脫離在學校學機率的時間久了 腦袋有點退化 想請還在逗co2年華的鄉民協助 問題敘述如下 由於自己對活動的認知也不是太有研究 詳細有不符合現實的情況還請鄉民指 正 題目:X
[問卦] 中國網紅魚閃閃相當於台灣哪個女歌手?誒誒誒,你各位肥宅 中國網紅歌手魚閃閃如果放到台灣,相當於台灣哪個新生代女歌手的Level 啊? 【踏山河】觀看次數:159,643次2021年9月2日 【虞兮嘆】觀看次數:188,956次2021年7月23日