Soft_Job 板


LINE

「英文」是不少人學寫程式的一個關卡,而「命名」又是電腦科學最難的問題之一 。我正在整理幾個最常見的「如何用英文命名程式裡的某個東西?」的問題與答案 ,在此與各位分享目前整理好的第一個題目: * 如何命名「數量變數」? * 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 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 136.56.13.184 (美國)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1594363672.A.7D0.html
1F:推 chuegou: 這個有趣 07/10 14:56
2F:推 goodseeyou: 推 07/10 14:57
3F:推 sk6852: 實用 07/10 15:10
4F:推 devilkool: 實用推 07/10 15:14
5F:推 y2468101216: 推 07/10 15:21
謝謝各位的欣賞 :) 如果在程式寫作上有任何與英文表達有關的問題,請讓我知道 ,這會是「用英文提昇程式可讀性」很棒的研究題材。
6F:推 vi000246: 我喜歡台式英文 bulletWeight remainLife 07/10 15:31
完全能理解,解決問題優先。 語言能做到優雅當然是好,但最重要的功能還是溝通(人與人的溝通、人與機器的 溝通)。 我開了 https://github.com/EngTW/English-for-Programmers/issues/8 來追蹤 這個題目,謝謝 :) ※ 編輯: AmosYang (136.56.13.184 美國), 07/10/2020 15:56:07
7F:推 jobintan: niceTutorial, it_is_very_useful. 07/10 15:52
XD ※ 編輯: AmosYang (136.56.13.184 美國), 07/10/2020 15:57:50
8F:→ askaleroux: magicNumber // do not erase this 07/10 15:58
9F:→ testPtt: 基本上不用Quantity 太長 07/10 16:06
完全能理解,縮寫、簡寫、更短的字、更簡潔的寫法,只要能解決問題,都是好的 。 我開了 https://github.com/EngTW/English-for-Programmers/issues/7 來追蹤 這個題目,謝謝 :)
10F:推 RedArmy95: 推 07/10 16:15
11F:推 chuegou: #define ZERO 0 07/10 16:31
12F:推 unmolk: 樓上是殺小xddd 07/10 16:52
13F:推 bowin: 推 AmosYang 好文! 07/10 16:59
14F:推 accessdenied: zero = 0 這個我真的看到! 還有 True = 1, False = 07/10 17:09
15F:→ accessdenied: 0 07/10 17:09
16F:推 alihue: 推 07/10 17:12
17F:推 sniper2824: 好文 07/10 17:12
18F:推 ben810514: bulletCount 07/10 17:27
19F:→ ben810514: 沒事 是重量以為是數量 07/10 17:28
20F:→ sirius65482: 不管啦 通通用xxxNum 07/10 17:40
21F:→ bheegrl: ammoQty 07/10 17:40
我開了 https://github.com/EngTW/English-for-Programmers/issues/7 來追蹤 「縮寫、簡寫」這個題目;謝謝提供這個題目 :)
22F:推 paulshain04: 很讚欸 推一個 07/10 18:07
23F:推 Rm: amount跑去哪了 07/10 18:09
amount 整理在「不可數名詞」的「其它格式」那段。 :) amount 本身當主詞時,常用來描述金錢上的「總金額(total amount)」,我開了 https://github.com/EngTW/English-for-Programmers/issues/9 來追蹤這個題目 ,謝謝 :)
24F:推 atpx: 好文, 不得不推 07/10 19:02
25F:→ pttano: 我都定arg1,arg2,var1,var2 07/10 19:10
26F:→ pttano: 我都定arg1,arg2,var1,var2 07/10 19:10
27F:推 kokolotl: a1, b1啊~~ 07/10 19:11
28F:→ pttano: 我都定arg1,arg2,var1,var2 07/10 19:12
29F:→ pttano: 我都定arg1,arg2,var1,var2 07/10 19:13
30F:→ pttano: 我都定arg1,arg2,var1,var2 07/10 19:14
31F:推 infixman: 推推 07/10 19:19
32F:推 chuegou: 樓上重複定義編譯器不給過 07/10 19:21
33F:推 dks50217: Cnt 07/10 19:21
我開了 https://github.com/EngTW/English-for-Programmers/issues/7 來追蹤 「縮寫、簡寫」這個題目;謝謝提供這個題目 :)
34F:→ yyc1217: remove delete erase cancel dismiss 07/10 19:24
我開了 https://github.com/EngTW/English-for-Programmers/issues/10 來追蹤 這個題目,謝謝 :)
35F:推 enthos: pn, an, bg, hp \ Forth(Write-only lang.) style. 07/10 19:35
我開了 https://github.com/EngTW/English-for-Programmers/issues/7 來追蹤 「縮寫、簡寫」這個題目;謝謝 :)
36F:推 goldflower: 看過中國人用拼音寫扣 jin_jia_ki_si 07/10 19:46
我開了 https://github.com/EngTW/English-for-Programmers/issues/8 來追蹤 這個題目,謝謝 :)
37F:→ leo5916267: 多查英文字典吧?有時候直接問英文好的人資XD超好笑 07/10 19:57
38F:→ leo5916267: ,寫程式還會問到人資那邊 07/10 19:57
39F:推 gasbomb: 上一份工作看到的 氣死https://i.imgur.com/x9GmljV.jpg 07/10 19:59
我開了 https://github.com/EngTW/English-for-Programmers/issues/8 來追蹤 這個題目,謝謝 :)
40F:推 jason90929: 讚 07/10 20:09
41F:推 Lhmstu: 推推 07/10 21:00
42F:推 negligence: 推 07/10 21:39
43F:推 invidia: 感謝分享 07/10 22:13
44F:→ abc0922001: 感謝分享,命名真的是難題 07/10 22:26
45F:推 jasonwung: 實用推 07/10 22:59
46F:→ labbat: qwertyyuiop 07/10 23:10
47F:推 CaptPlanet: 推 07/10 23:21
48F:推 dces4212: nr_student 07/10 23:28
我開了 https://github.com/EngTW/English-for-Programmers/issues/7 來追蹤 「縮寫、簡寫」這個題目;謝謝 :)
49F:→ OrzOGC: 用拼音真的...還有日文拼音的...冏... 07/10 23:46
我開了 https://github.com/EngTW/English-for-Programmers/issues/8 來追蹤 這個題目,謝謝 :)
50F:推 Dracarys: foo bar baz 07/11 00:10
我開了 https://github.com/EngTW/English-for-Programmers/issues/11 來追蹤 "metasyntactic variable" 這個題目,謝謝 :)
51F:推 Luke3723: 推 07/11 00:21
※ 編輯: AmosYang (136.56.13.184 美國), 07/11/2020 02:40:00 感謝各位的欣賞與提供題目 orz 如果我漏看了題目,請告訴我,謝謝 :) ※ 編輯: AmosYang (136.56.13.184 美國), 07/11/2020 02:44:32
52F:推 Bencrie: nr_ 這個是 Linux kernel 的命名 07/11 02:46
感謝指點 orz
53F:推 richard07250: 先推在看 07/11 03:39
54F:推 Ouranos: Amos 必推!!! 07/11 04:02
※ 編輯: AmosYang (136.56.13.184 美國), 07/11/2020 05:36:24
55F:推 ben4562002: 推 獲益良多 07/11 08:32
56F:推 joy7658x348: 推!命名對新人工程師更是一個問題XD常常會看不懂那 07/11 09:45
57F:→ joy7658x348: 是啥 07/11 09:45
58F:推 NeCool: 推 07/11 09:57
59F:推 coder5566: 推 07/11 11:34
60F:推 believe91326: 實用推 07/11 15:08
61F:推 zxcv860513: 推,很怕看到需要通靈的命名 07/11 16:12
感謝各位的欣賞 :) 如果能想到「很難看懂、需要通靈」的命名案例,請讓我知道;這可以幫助我把這 些資料整理得更完善,謝謝。 在這篇底下推文,或在 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
62F:推 klandakuei: 推 07/12 22:15
63F:推 visual: 推 07/14 18:55
64F:推 zelt: 推 07/17 10:20
65F:推 a8319: 有趣又實用 07/20 14:00
66F:推 beryah: 推 07/26 00:57
謝謝 :) ※ 編輯: AmosYang (136.56.13.184 美國), 08/08/2020 03:09:46
67F:推 Rmustang: 推推推 02/09 13:21







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP