Soft_Job 板


LINE

這週的題目是:「檢查」的相關動詞。 * 如何命名「檢查」功能? * Check, Test, Verify, Validate 有什麼不一樣? --- * Google 簡報 https://bit.ly/31UiEPK * Facebook 相簿 https://bit.ly/31NqsCU * GitHub 討論 https://bit.ly/321ResR --- # 先說結論 * 如果不確定該用哪個動詞,就用 *Check* --- # 所謂「檢查」這個動作 相對於模糊邏輯 (fuzzy logic),我們在寫程式時多半使用 古典邏輯 (classical logic),也就是以「真、假」二元的方式來表示邏輯、進行 運算;例如,以下程序: 1. 如果 1. 「使用者有讀取權限」為真 2. 就 1. 傳回資料 3. 否則 1. 丟出錯誤 在我們寫的程式中,常常需要「檢查」程式邏輯模型的狀態,然後做出判斷,決定 程式下一步的行為。 這就是這週的題目:「檢查」的相關動詞。 --- # 檢查: Check Check 可說是最萬用的「檢查」動詞,它可以用來: * 檢查「有無」 * Windows 更新 * 讀寫權限 * 新 email * 檢查「對錯」 * 拼字、文法 * 檢查「狀態、品質」 * 網路連線 有無 連上 * 硬碟空間 是否 足夠 幾乎什麼都可以來 *check* 一下。 如果不確定要用什麼動詞來表達 * 檢查有無、對錯、是否 * 檢查系統狀態,做出判斷,傳回詳細資訊 的動作,用 check 大概不會有錯。 XD 接下來,以 check 為基準來比較幾個「檢查」相關動詞在語意上的特點。 --- # 「檢查 + 後續動作」的動詞 相對於單純只執行「檢查」的 check,assert 與 ensure 分別代表以下兩個常用 的「檢查 + 後續動作」程式結構。 ## Assert 「檢查之後,若系統不滿足條件,丟出錯誤」。 1. 檢查「某條件C」 2. 若 1. 「某條件C」為假 3. 就 1. 丟出錯誤 ## Ensure 「檢查之後,若系統不滿足條件,採取行動確保系統狀態合乎條件」。 1. 檢查「某條件C」 2. 若 1. 「某條件C」為假 3. 就 1. 採取行動以確保系統狀態合乎「某條件C」的要求 --- # 重視實驗的「測試 (test)」動詞 * 檢查 (check) 偏向「從系統讀取資訊來做出判斷、回報結果」 * 測試 (test) 偏向「與系統互動並觀察其反應來做出判斷、回報結果」 以「有無讀寫權限」為例: * 檢查 (check) 可能會拿著目前使用者的身分符記 (token) ,詢問作業系統該使 用者是否有讀寫權限,然後回傳檢查結果。 * 測試 (test) 可能會以目前使用者的權限,直接去試試看能否真的執行讀寫動作 ,然後回傳測試結果。 --- # 重視預期正確答案的「驗證」動詞 相對於檢查(check) ,「驗證」偏向於「讀取資訊,與預期的正確答案比對,回報 結果或丟出錯誤」。 以「 email 格式正確與否」為例, validate 比 check 更能強調「驗證是否合乎 規範標準」。 以「使用者密碼正確與否」為例, verify 比 check 更能強調「驗證是否合乎已 知的正確答案」。 --- # 確認 (confirm) vs. 驗證 (verify) 確認 (confirm) 與驗證 (verify) 兩者都可以用來檢查「事情是否準確、真實」 ,但它們在語意上有微妙的差異: * 確認 (confirm) 傾向「確定想法;消除疑慮、不確定性」。 * 在前端設計,會以 confirm 或 OK 來讓使用者「確認」執行它的選擇;而不 常用 verify 。 * 在日常會話,會以 confirm 作為動詞來「確認」行程;而不常用 verify 。 * 驗證 (verify) 傾向「取得資訊、進行實驗來判斷事情是否正確」。 * 在前端設計,會以 verify 來提示使用者「驗證」它的手機。 * 在後端設計,會以 verify 來命名「檢查事情是否準確、真實」的方法;而不 常用 confirm 。 --- # 其它情境 在某些相對少見的情境下,「檢查」有它的習慣用字,例如: * authenticate : 檢查使用者身分真偽 * scan : 大範圍檢查;掃描 * ping : 檢查遠端伺服器、服務的狀態 * analyze : 檢查系統行為現象的本質;分析 * audit : 全面嚴謹地檢查系統的行為;審察 * diagnose : 檢查問題的原因;診察 * inspect : 檢查是否滿足某種標準;稽察 其它還有 examine、investigate、review 等字;在程式碼中相對地罕見,在文書 或註解中比較常見。 --- # 結語 一週探索一個題目,逐漸把寫程式會用到的英文知識整理起來;每個人都是從零開 始學起的,我也從讀者提問中學到了很多 :) 如果你在寫程式時有遇到英文表達上的問題,歡迎留言討論,或到《程式英文》 GitHub 討論區 https://bit.ly/321ResR 提問。 這可以幫助我把這個列表整理的更完善,謝謝 :) --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 136.56.13.184 (美國)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1597382427.A.19A.html
1F:推 y956403: 感謝分享 08/14 14:02
2F:推 alihue: 做成工具(書/web)讓人查好像不錯 08/14 14:06
同意;長期來說會想往 HTML / GitHub Pages 的方向前進;方便閱讀、檢索、製 作、協作。
3F:→ alihue: 感謝分享 08/14 14:06
4F:推 sniper2824: 推個 08/14 14:08
5F:推 DCTmaybe: 必須推 08/14 14:22
6F:推 Tiguru: 推 08/14 15:30
7F:推 tbpfs: 加油~一周一篇~一年後就可以出書了 08/14 15:40
謝謝鼓勵 :)
8F:推 m234onica: 謝謝推 08/14 15:57
9F:推 ericx790101: 感謝分享 08/14 18:10
10F:推 chenshin0719: 推推 08/14 18:52
11F:推 wjp1003: 推 08/14 19:14
12F:推 tz5514: 推 08/14 19:31
13F:推 Luke3723: 推 08/15 01:10
14F:推 yyhsiu: 推,這個實用 08/15 01:14
謝謝各位的欣賞 :) ※ 編輯: AmosYang (136.56.13.184 美國), 08/15/2020 12:40:07
15F:推 summerleaves: 感謝分享! 08/15 12:35
16F:推 scottxxx666: 推 08/15 14:07
17F:推 azoaho: 推!非常感謝,對我幫助很大! 08/15 16:34
18F:推 rapidsheep: 推推~ 08/15 19:26
19F:推 jasonwung: 推 08/15 21:01
20F:推 blueskier: 推 08/16 10:15
謝謝 :)
21F:推 blueskier: 想問會不會做CURD操作的系列,很常用的幾個 08/16 10:18
是的,有打算做 CRUD 。 目前有一篇『如何命名「刪除」功能?』,可以參考以下連結: * #1V8-skH9 (Soft_Job) * https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1596190126.A.449.html C、R、U的部分還沒開始寫,但有開項目追蹤 :) * C: https://github.com/EngTW/English-for-Programmers/issues/28 * R: https://github.com/EngTW/English-for-Programmers/issues/29 * U: https://github.com/EngTW/English-for-Programmers/issues/30 ※ 編輯: AmosYang (136.56.13.184 美國), 08/16/2020 20:54:18 ※ 編輯: AmosYang (136.56.13.184 美國), 08/16/2020 20:59:45
22F:推 Bencrie: 那順便許願一下 commit message 好了 XD 08/17 02:15
很有意思的題目 :) 能否談談你覺得「寫 commit message 時,多半卡在哪裡?」;例如說,句型、文 法、選字? 或著,若能談談「讓你覺得卡住的案例」,也能幫助我們找到解決問題的方向。 --- 可以在這裡推文討論、 PTT 站內信 、或 Facebook/Twitter 私訊都可以 :) * https://www.facebook.com/twy30 * https://twitter.com/twy30 ※ 編輯: AmosYang (136.56.13.184 美國), 08/17/2020 05:46:29
23F:推 smily134: 推 08/17 12:48
24F:推 helenalee: 推 08/18 14:57
25F:推 s56565566123: Good分享感謝 08/20 08:24
謝謝各位的欣賞 :) ※ 編輯: AmosYang (136.56.13.184 美國), 08/21/2020 12:40:58
26F:推 BlazarArc: 推 08/21 15:15
謝謝 :)
27F:推 zxcasdjason1: 推命名工具書 08/28 12:27
謝謝你的欣賞 :)
28F:→ zxcasdjason1: 最近常常對定義新功能感到詞窮 08/28 12:28
有沒有興趣描述一下你遇到的困境?或許我可以幫上忙 :) ※ 編輯: AmosYang (136.56.13.184 美國), 08/29/2020 07:47:32
29F:推 mybluesky: 推 09/02 18:29
謝謝 :) ※ 編輯: AmosYang (136.56.13.184 美國), 09/04/2020 12:13:48







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燈, 水草

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

TOP