[心得][英文] 如何命名「數量變數」
「英文」是不少人學寫程式的一個關卡,而「命名」又是電腦科學最難的問題之一
。我正在整理幾個最常見的「如何用英文命名程式裡的某個東西?」的問題與答案
,在此與各位分享目前整理好的第一個題目:
* 如何命名「數量變數」?
* Count / Number / Quantity
* 什麼時候該用哪個字?該怎麼用?
---
* Google 簡報版: https://bit.ly/38OWoKf
* Google 簡報原始檔: https://bit.ly/3elcZGT
* Facebook 相簿版: https://bit.ly/3iNsgDO
* GitHub 討論區: https://bit.ly/321ResR
---
首先,可以試試看命名以下變數(文末有參考答案):
1. 玩家(player)數量
2. 彈藥(ammo)數量
3. 子彈(bullet)質量(mass) (以克(gram)計)
4. 生命值(hit points)
如果這對你來說沒有難度,或許你會有興趣到 GitHub 討論區看看其它我正在整理
的題目: https://bit.ly/321ResR
---
# 命名「數量變數」的方法
1. 辨認變數名詞詞性
* 不可數名詞
* 可數生物
* 可數非生物
2. 對應單字及格式(見後文)
* 可數生物、可數非生物: Count / Number
* 不可數名詞、可數非生物: Quantity
---
# 不可數名詞
## 推薦格式
* 不可數名詞 + In + 單位(複數)
goldInKilograms 黃金(以公斤計)
* 單位(複數) + Of + 不可數名詞
kilogramsOfGold 黃金(以公斤計)
## 其它格式
* 不可數名詞 + Amount : goldAmount 黃金數量
* 不可數名詞 + Quantity : goldQuantity 黃金數量
* amountOf + 不可數名詞 : amountOfGold 黃金數量
* quantityOf + 不可數名詞 : quantityOfGold 黃金數量
這些格式無法清楚表達數量單位,其可讀性在科學或金融計算上並不理想,但在其
它情景或許不是問題(例如,遊戲設計)。
---
# 可數生物
## 推薦格式
* 生物(單數) + Count
studentCount 學生人數
尤其適合為「用來計數的變數」命名
* numberOf + 生物(複數)
numberOfEmployees 員工人數
## 常見問題
* 生物(單數) + Number
在語意上是「號碼」的意思
studentNumber 學生號碼
* countOf + 生物(複數)
在語法上通常不會這樣寫
---
# 可數非生物
## 推薦格式
* 非生物(單數) + Count
bookCount 書本數量
尤其適合為「用來計數的變數」命名
* 非生物(單數) + Quantity
bookQuantity 書本數量
尤其適合用在「貨物」上
* numberOf + 非生物(複數)
numberOfBooks 書本數量
* quantityOf + 非生物(複數)
quantityOfBooks 書本數量
尤其適合用在「貨物」上
## 常見問題
* 非生物(單數) + Number
在語意上是「號碼」的意思
accountNumber 帳戶號碼
* countOf + 非生物(複數)
在語法上通常不會這樣寫
---
# 其它討論
* 有的時候,程式可讀性的確是 *相對地* 沒那麼重要。
* 滿足需求、解決問題、創造價值最重要。
* 提昇程式可讀性的方法不止一種
* 要把程式碼上下文脈絡、使用情景、團隊文化、產業領域也納入考量。
---
相對於「寫作風格」(駝峰式大小寫、蛇式/烤肉串式、等等),我想從另一個角
度,聚焦於「學會用英文表達想法」,
學會用英文提昇程式可讀性。
我很想知道讀者在寫程式時,遇到了怎麼樣的英文表達問題。
我目前有蒐集到一些題目,例如:
* Count / Length / Size, 什麼時候該用哪個字?該怎麼用?
* Copy / Clone / Duplicate
* Sum 與 Total 的差別
* Validate vs. Verify
很歡迎讀者推文(或到 GitHub 討論區 https://bit.ly/321ResR )提出
* 問題
* 建議
* 感想
謝謝。
---
# 練習題 *參考* 答案
1. numberOfPlayers, playerCount
2. quantityOfAmmo, ammoQuantity
3. bulletMassInGrams
4. hitPoints
--
這個有趣
推
實用
實用推
推
謝謝各位的欣賞 :) 如果在程式寫作上有任何與英文表達有關的問題,請讓我知道 ,這會是「用英文提昇程式可讀性」很棒的研究題材。
我喜歡台式英文 bulletWeight remainLife
完全能理解,解決問題優先。 語言能做到優雅當然是好,但最重要的功能還是溝通(人與人的溝通、人與機器的 溝通)。 我開了
https://github.com/EngTW/English-for-Programmers/issues/8來追蹤 這個題目,謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 07/10/2020 15:56:07niceTutorial, it_is_very_useful.
XD
※ 編輯: AmosYang (136.56.13.184 美國), 07/10/2020 15:57:50magicNumber // do not erase this
基本上不用Quantity 太長
完全能理解,縮寫、簡寫、更短的字、更簡潔的寫法,只要能解決問題,都是好的 。 我開了
https://github.com/EngTW/English-for-Programmers/issues/7來追蹤 這個題目,謝謝 :)
推
#define ZERO 0
樓上是殺小xddd
推 AmosYang 好文!
zero = 0 這個我真的看到! 還有 True = 1, False =
0
推
好文
bulletCount
沒事 是重量以為是數量
不管啦 通通用xxxNum
ammoQty
我開了
https://github.com/EngTW/English-for-Programmers/issues/7來追蹤 「縮寫、簡寫」這個題目;謝謝提供這個題目 :)
很讚欸 推一個
amount跑去哪了
amount 整理在「不可數名詞」的「其它格式」那段。 :) amount 本身當主詞時,常用來描述金錢上的「總金額(total amount)」,我開了
https://github.com/EngTW/English-for-Programmers/issues/9來追蹤這個題目 ,謝謝 :)
好文, 不得不推
我都定arg1,arg2,var1,var2
我都定arg1,arg2,var1,var2
a1, b1啊~~
我都定arg1,arg2,var1,var2
我都定arg1,arg2,var1,var2
我都定arg1,arg2,var1,var2
推推
樓上重複定義編譯器不給過
Cnt
我開了
https://github.com/EngTW/English-for-Programmers/issues/7來追蹤 「縮寫、簡寫」這個題目;謝謝提供這個題目 :)
remove delete erase cancel dismiss
我開了
https://github.com/EngTW/English-for-Programmers/issues/10來追蹤 這個題目,謝謝 :)
pn, an, bg, hp \ Forth(Write-only lang.) style.
我開了
https://github.com/EngTW/English-for-Programmers/issues/7來追蹤 「縮寫、簡寫」這個題目;謝謝 :)
看過中國人用拼音寫扣 jin_jia_ki_si
我開了
https://github.com/EngTW/English-for-Programmers/issues/8來追蹤 這個題目,謝謝 :)
多查英文字典吧?有時候直接問英文好的人資XD超好笑
,寫程式還會問到人資那邊
上一份工作看到的 氣死https://i.imgur.com/x9GmljV.jpg
我開了
https://github.com/EngTW/English-for-Programmers/issues/8來追蹤 這個題目,謝謝 :)
讚
推推
推
感謝分享
感謝分享,命名真的是難題
實用推
qwertyyuiop
推
nr_student
我開了
https://github.com/EngTW/English-for-Programmers/issues/7來追蹤 「縮寫、簡寫」這個題目;謝謝 :)
用拼音真的...還有日文拼音的...冏...
我開了
https://github.com/EngTW/English-for-Programmers/issues/8來追蹤 這個題目,謝謝 :)
foo bar baz
我開了
https://github.com/EngTW/English-for-Programmers/issues/11來追蹤 "metasyntactic variable" 這個題目,謝謝 :)
推
感謝各位的欣賞與提供題目 orz 如果我漏看了題目,請告訴我,謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 07/11/2020 02:44:32nr_ 這個是 Linux kernel 的命名
感謝指點 orz
先推在看
Amos 必推!!!
推 獲益良多
推!命名對新人工程師更是一個問題XD常常會看不懂那
是啥
推
推
實用推
推,很怕看到需要通靈的命名
感謝各位的欣賞 :) 如果能想到「很難看懂、需要通靈」的命名案例,請讓我知道;這可以幫助我把這 些資料整理得更完善,謝謝。 在這篇底下推文,或在 GitHub 或 Facebook 留言都可以 :) * GitHub:
https://github.com/EngTW/English-for-Programmers/issues* Facebook:
https://bit.ly/3iNsgDO※ 編輯: AmosYang (136.56.13.184 美國), 07/12/2020 04:07:11
補上 Google 簡報原始檔:
https://bit.ly/3elcZGT※ 編輯: AmosYang (136.56.13.184 美國), 07/12/2020 12:44:21
推
推
推
有趣又實用
推
謝謝 :)
※ 編輯: AmosYang (136.56.13.184 美國), 08/08/2020 03:09:46推推推
爆
[心得] COVID期間拿到Google/FB/微軟 Offer Part3如何準備面試和談薪水 上一篇我分享了我在 COVID-19 期間如何拿到 Google 、FB、Microsoft Offer 的經驗。 這篇我會講一下我是如何準備面試和如何談薪水。 面試 — Leetcode 我個人建議是千萬不要盲目的從第一題開始寫,因為每一題並不等價。有些題目是經典中40
[心得][美國] 幾年的面試者+面試官經驗鑑於近年來LeetCode刷題被神化,被認為是面試必備 所以我想以5年多以來無論是當面試者還是當面試官的經驗 來分享一下如何準備面試 首先先分享一下我的經歷 我不是什麼強者,沒有參加過ACM競賽,Code jam頂多做兩題19
[心得] 後端面試 17 SmartNews Mercari背景: 112 資工碩畢,工作經驗 8 年,其中 6 年是 backend 1. 17 media 104 上面看到,直接到他們的 bamboohr 上面投,應徵職位是 sr. backend eng. pretest: 5 題程式題限時 2 小時,整體難度約 leetcode 中偏難,題數多蠻吃熟練度17
Fw: [心得] COVID期間拿到Google FB 微軟 Offer Part3作者: ghostreporty (ghost) 看板: Soft_Job 標題: [心得] COVID期間拿到Google FB 微軟 Offer Part 時間: Tue Nov 17 13:13:04 2020 如何準備面試和談薪水 上一篇我分享了我在 COVID-19 期間如何拿到 Google 、FB、Microsoft Offer 的經驗。16
[閒聊] 高雄簡報open mic 八月主辦心得之所以標題打主辦心得,而不是宣傳,因為這就只是一個平凡人辦活動的心得分享。先秀成果照片,讓大家知道一下高雄有【簡報Open Mic】這樣的活動存在,一圖勝千言。 開場與講一些話。 第1個題目分享【背包客勇闖非洲,非典型旅行分享,冒險成份87%】 by 丁丁14
[工具] 御試-內專-內科專科醫師甄審的得力助手繼上一個軟體之後,友人參考大家的回應,又推出一個新的離線app.... 請詳閱喔,有違 版規再麻煩告知,謝謝大家觀看 照過來~照過來~~ 絕對不是複製貼上的唷 在忙碌的上班和值班過程中,如何善用零碎時光掌握考題內容與趨勢,就需要御試楔滷M 來協助您了。11
[問卦] 看了一篇五千字的作文 怎命名題目?從小到大我們寫作文 都一定要先寫題目 大小段考 學測 指考都一樣 剛剛我看到一位女性寫的 五千字的作文 題目呢?9
[討論] 週三clubhouse 用GCA面試題目挑戰科技龍頭用GCA面試題目挑戰科技龍頭 網路上常常流傳一些千奇百怪的面試題目。微軟蘋果谷歌似乎都會出一些讓人摸不著頭緒 的思考題。但其實這些題目不是腦筋急轉彎,他們是有被設計過的題庫。Google叫他GCA (general cognitive ability)。這是相對於本職相關問題RRK (role-relative knowledg e)的一個稱呼。GCA問題是拿來看一個人的思考,分析,解決方式。如果你能克服這類問題3
[國考] 御試-精專的Android版來了~~~(代po) —————————————————— 軟體連結: 跟大家報告一件好消息,御試-精專的Android版本上架了,請用手機開啟以上連結或者掃1
[問卦] 有沒有台灣人愛英文的八卦台灣的大學老師為什麼這麼愛英文 明明就可以用中文出作業、考題就好 偏偏要用英文,結果英文超爛,題目詞不達意,學生還要在那邊猜意思。 而且還叫助教跟著做,助教出作業也用英文,然後一樣寫的不清不楚,在討論區用中文發問 ,助教還一副愛理不理的樣子,說題目有寫。