分享

如果编程替换成中文就会怎样? 程序员看了表示头疼

 晴天心弥 2018-09-24

首先大概的看一下中文编码:

你以为会写中文就会编程吗?这就像你以为会写汉字就会写出好文章一样。编程是和机器沟通,因此要用机器的语言而不是人类的语言。最早的程序就是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卦,就能表达宇宙万物。这比老外的英文编程语言不知道高级多少倍。而且,满眼全是中文,老外就算认识中文字也看不懂意思,呵呵。

各位程序员们是如何看待用中文编程的了?

总结的一些干货,我自己是一名从事了5年java开发的全栈工程师,辞职目前在做线上教育讲师,今年年初我花了一个月整理了一份最适合2018年学习的java干货,包括基础+资料+视频,都是免费的,在这里相信有许多想要学习java的同学。

加QQ群:165080868(招募中)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多