如果有一天代码都换成中文,这种画面,简直不忍直视?
扫描二维码
随时随地手机看文章
放开你们的脑洞大胆的想想,如果有一天代码全部变成了中文会怎样?
首先我们可以大致了解一下把英文程序员换成中文编码会是什么样子:
你以为会写中文就会编程吗?这就像你以为会写汉字就会写出好文章一样。编程是和机器沟通,因此要用机器的语言而不是人类的语言。最早的程序就是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"结束如果
其实也看得出来,英文写的程序更为简洁明了。
其次从语言学的角度来说,英文是线性的一维语言,而中文是平面的二维语言。
而程序恰恰是线性的一维的。也就是说,线性的英文正好能契合线性的程序。所以,中文并不适合现有的编程方式。(很大程度是因为计算机是由国外发明兴起的,所以为了省去麻烦,中国也一直沿用的是英文编程。虽然如今也有易语言编程,但终究不是主流。)
不过随着IT行业的发展,未来的变化可能会超出你的想象。未来可能会有多维度的量子计算,也许二维的中文反而会比一维的英文更适合。
众所周知,目前主流的程序员编程都是用英文编程,这也是由时代发展趋势决定的。