如果程式設計替換成中文就會怎樣? 程式設計師看了表示頭疼

程式碼灣發表於2018-06-20

首先大概的看一下中文編碼:

你以為會寫中文就會程式設計嗎?這就像你以為會寫漢字就會寫出好文章一樣。程式設計是和機器溝通,因此要用機器的語言而不是人類的語言。最早的程式就是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卦,就能表達宇宙萬物。這比老外的英文程式語言不知道高階多少倍。而且,滿眼全是中文,老外就算認識中文字也看不懂意思,呵呵。

相關文章