用中文編程,就不用學英語?我保證你會更頭疼!
1 人贊了文章
首先大概的看一下中文編碼:
你以為會寫中文寫編程就簡單了嗎?這就像你以為會寫漢字就會寫出好文章一樣。編程是和機器溝通,因此要用機器的語言而不是人類的語言。
最早的程序就是0和1的數字,不是中文也不是英文。以前的程序員,每天寫程序就是在一條長長的紙帶上打孔表示0和1。後來發現0和1的二進位太麻煩了,就把0和1壓縮一下,用16進位表示,比如數字10,用二進位表示是1010,用16進位表示就是0A,這樣表達起來就更簡潔,但是輸入電腦後,仍然要轉換為二進位電腦才能明白。
後來,科學家們用簡單的英文單詞表示某些功能,比如加法,就用add表示,減法就用dec表示。程序員輸入add或dec後,系統會轉換為對應的演算法。就這樣不斷的給不同的代碼段起名字。編程語言就是從數字編碼不斷壓縮提高層次,最後形成了當今的各種風格的編程語言。為什麼碼農會討厭中文編程?我用最流行的易語言說明。
所謂全中文的易語言,其實就是把Visual Basic語言中每個英文單詞換成了對應的中文詞,其他都不變。比如Visual Basic的代碼是這樣:
if True thenPrint "OK" endif
換成了易言語,就是這樣了:
如果 真 那麼列印 "OK" 結束如果
任何人都能看出來,英文寫的程序更簡單清晰。
其實從語言學的角度來說,英文是線性的一維語言,而中文是平面的二維語言。而程序恰恰是線性的一維的。也就是說,線性的英文正好能契合線性的程序。所以,中文並不適合現有的編程方式。
然而,未來的發展可能超出你的想像。未來可能會有多維度的量子計算,也許二維的中文反而會比一維的英文更適合。
程序員對比過中文編程和英文編程就會明白,中文編程反而會提高門檻。因為編程的核心根本就不是什麼語言,而是程序化思維方式。最簡單的並不是英文編程,而是數學符號編程,極度抽象,普通人很難理解,但代碼量特別少。
補充一句,其實現代的語言比如Java,都支持Unicode,也就是說可以用中文甚至世界其他語言做變數名和函數名,你可以試試看,這樣看起來就基本上就相當於是中文編程了,對比一下英文編程,你就會知道哪個更好了。
電腦能識別的只是0和1的二進位而已,那麼,如果按中文的角度來考慮,那麼應該從核心開始就把二進位轉換為8進位,然後用八卦來表示,這樣從底層構造純中文的計算機。八卦兩兩組合,演化為64卦,就能表達宇宙萬物。這比外國人的英文編程語言不知道高級多少倍。而且,滿眼全是中文,外國人就算認識中文字也看不懂意思,哈哈。
推薦閱讀:
※講道理,編程到底該學些什麼?
※啰啰嗦嗦地隨便寫寫-在工作1年後
※Leetcodes Solution 46 Permutations
※學慣用 Thonny 寫代碼: 一個面向初學者的Python IDE
※軟體開發的核心-控制複雜度
TAG:編程 |