专栏名称: 算法与数学之美
从生活中挖掘数学之美,在实践中体验算法之奇,魅力旅程,从此开始!
目录
相关文章推荐
九章算法  ·  新的hire风暴要来了 ·  3 天前  
九章算法  ·  亚麻大裁员开始了… ·  4 天前  
九章算法  ·  《LeetCode押题宝典.pdf》白嫖,进 ... ·  5 天前  
算法爱好者  ·  期待已久!全新微信终于来了,界面无比清爽 ·  4 天前  
程序员鱼皮  ·  被算法题挂麻了。。。 ·  6 天前  
51好读  ›  专栏  ›  算法与数学之美

为什么不能用汉字编程?

算法与数学之美  · 公众号  · 算法  · 2017-07-18 21:21

正文


简书

之前和 D-clock爱吃葱花  一起组织做了一个wiki《Android开发书籍推荐:从入门到精通系列学习路线书籍介绍》


看到现在的程序,都是英文,如果在一年之内中国不能只用自己的文字来编程,则中国在可以业界就完全是一棵小草,必须从技术上彻底根除



还记得这是曾经一个网友在百度知道里说的话。看到当时就笑了。



如今已经2017了,这种问题应该不会再有了吧,但是搜了搜,仍然遍地都是。



今天彻底说清楚,为什么编程不能用中文?



原因只有一个~编程里有英文词,但不是英文。这是最想说明白的。



有人在知乎上这么说:"我用Python、C++、Java编程,而不是用英文编程。""「别人都是用英文编程的」这个概念是错误的,程序语言就是程序语言。"



即使你精通英语,也看不懂程序员写的程序。因为,英文是英文,程序码是程序码。即使是一个世界语言学专家,你给他一段C++语言写的程序,他也是看不懂。



示例:

#include "iostream.h"

using namespace std;

class A{public:int inside_A;};

void main(){A *obja=new A;A **addr=&obja;cout<



好,我们翻译成中文:

#包含 "输出输入流.头"

使用 命名空间 斯他的;

类 一{

共:整形 其一;};

没有 主(){一 *物一=新 一;一 **其位=&物;出<



看看翻译成中文的这个程序,这就是你让一个精通英文的英文大师去看一段程序码,他所看到的。

有人说,其实还有一个原因就是:汉字输入太麻烦。这个我反对,现在有五笔和二逼输入法,键盘录入速度应该是不难了。只是编码问题(比如老板qt creator里只要输入汉字就会编译不通过..)



现在倒是有中文编程。但那是 中·文·编·程,不是汉语编程,就是说,还是编程语言,不是人说的,不过用的词是中国的文字而已。E语言,TC都是,并且C++/C语言只要加上一些中文词语的宏定义,也可以使用中文编程。



其实有汉语编程的,但是但是并不实际。编程的语言知识一种代码,最终还是转成2进制,所以理论上用什么语言编程都是一样的。问题在于,编程语言要有严格的规定,并且不能重复。对此,英文比中文更有优势。



其一、中国人讲中文,都有严格按语法来说吗,中文有倒装,省略,但是这些,电脑是看不懂的。



其二、汉字太多,多音字也很多,用命令的时候不能很快。



其三、参数问题,几乎通用的参数都是字母加字符,用中文,画蛇添足了。



其四、一个汉字占用二个字符,这样写的程序显得臃肿,并且影响编辑。


高质量延伸阅读

☞  第一个被认为“科学家”的人:泰勒斯

☞  数学思维比数学运算更重要

☞  二十世纪的十大科学骗局

☞  瞎扯现代数学的基础

☞  x背后的轶闻趣事

☞  主宰这个世界的10大算法

☞  16个让你烧脑让你晕的悖论

☞  机器学习中距离和相似性度量方法

☞  传说中的快排是怎样的

☞  玻璃秘史:一个人 改变了全世界

☞  程序人生的四个象限和两条主线

☞  比特币的原理及运作机制

☞  概率论公式,你值得拥有

☞  分类算法之朴素贝叶斯算法

☞  采样定理:有限个点构建出整个函数