如果电脑技术最初是中国人发明的,那现在编程是不是就是中文的?
扫描二维码
随时随地手机看文章
现在的编程代码全部都是英文,有没有可能有一天编程代码全是中文呢?而且如果当年计算机由中国人发明,编程代码是否就是以中文为主呢?
问:如果计算机由中国人发明,那现在的编程代码是否就是中文了?
观点1:其实什么语言都能编程,发明一门编程语言也不是难事,很多编程语言只是创造者花了十天半月发明出来的,每一门语言都是在特定的环境中运行,必须经过编译器编译成0和1。中文编程占的字符太多,编译出来后太臃肿,执行效率太低。 说用中文编程的人都是不会编程的人,其实编程语言和英语关系不大,我不会英语,但是现在会html JavaScript php Python 而且学会的时间并不长,php学了半个月,JavaScript 学了几天基础语法,Python 也是十来天, 学一门语言并不难,但要深入就难了,像我写程序大部分时间是在思考实现逻辑和方法,写代码的时间是很少的,简单的代码自己记住,复杂的函数做笔记,后面用时复制粘贴。 到现在我能开发出只要想得到的任何功能,但依然有很多单词我读不出,函数记不住。说起来别人还不信。 其实我只要知道有这么一个函数,这么一个公式,这么一个方法能实现这么一个功能,具体代码怎么写,单词怎么拼,一是笔记,二是百度,三是以前写过的项目。
观点2:我想说用中文编程并不是一种好的解决方案,键盘上用26个按键能代表26个英文字母,用26个字母能组合出成千上万个单词,这是字母编程的优势,你不可能组一个几平方的键盘阵把所有中文字都一一对应一个按键,别说制作成本,但是你要在这么大的键盘上找到你想要的那个字就不可能,那么剩下的就是用目前的解决方案——拼音来进行汉字输入,可是归根结底拼音也还是字母,既然能用字母编程,那为何还要先讲字母拼音转换为汉子再进行编程,即使中国人想要开发一门计算机语言,用汉字明显是不合适的,汉字太多,单字节无法表示出所有的汉字。别跟我提易语言,来做arm开发试试?易语言就是对C的封装,却做不了C能做的事。简单来说我在C中添加个宏#define 整形 int我也一样用汉语编程。最后说字母是个有限的集合,汉字几乎是无限的,一直不断的有新的汉字被发明或者被发现,除非有人每年花大量的时间维护汉字集,否则搞不好哪天你写个偏僻字计算机都不认识,如果真实这样了,谁来做编译优化?这里所说的字母只是一只有限的符号集合,并非一定是英文字母还是希腊字母。
观点3:计算机底层语言为什么是英语呢,我们在打开电脑进入自检程序时,屏幕上显示的为什么是英语而不是汉语或其他语言呢,这个问题的确和计算机是美国人发明的有关系,因为美国人使用的字符集叫acsii码,全称是“美国国家信息交换用标准字符集”这个字符集包含26个英文字母大小写和10个阿拉伯数字,还有一些标点符号和一些转义字符(如空格,回车等),我们中国也有类似的字符集,叫“国家汉字信息交换用标准字符集”,好像简称“国标码”吧,当然其所包含的汉字符号个数要比acsii码多得多,acsii码只需一个字节就能表示完所有字符,而国标码却要两个字节,如果要表示完所有汉字则还需要更多,这样导致汉字比英语需要更多的存储容量,(不过在存储技术飞速发展的今天,这已不成问题)如果计算机是中国人发明,那肯定会理所当然将“国标码作为基本字符集啦”。如果是这样的话,那么童鞋们打开电脑进入自检程序时,在屏幕上看到的很可能是汉语的提示,这样电脑有问题也能很快知道问题出在哪里了,而不会因为不懂英语而苦恼。
如果计算机是中国人发明的,那么像c语言这类的计算机语言的关键字和程序的注释也有可能会换成汉字,那么我们学习程序设计自然会感到亲切一些,还有各种计算机术语,文献都是汉语,这样对国民计算机知识的普及也会有一些作用。
窃以为,如果不是美国人发明了计算机那么中国人再过一千年也不会发明计算机,这不是说中国人智商不如老外,而是因为我们的文化的原因。话说回来,既然老外发明计算机再先已是既定事实,我们也不必为此而感到沮丧,也不必为计算机里充斥着英语而感到懊恼。如果童鞋们立志要搞懂计算机,其实所需要搞懂的单词是有限的,就拿c语言来说,其关键字也才30多个,用点心很容易记住。我也鼓励大家学好英语,毕竟计算机是老外发明的,各种标注都是人家制定的,如果中国想推翻从来,不但要从头开始推翻人家的技术,还要推翻人家的市场,这是不现实的。一句话,学人所长,补己之短吧。
观点4:肯定的,可能很多人想当然的认为学编程与语言关系不大,我想说,学的速度关系大了去了。 比如通用的matlab,你遇到一个新的函数,想看看这个函数到底怎么用的,打开函数浏览器,突然发现,全是英文,看不懂,看的懂得也是猜了一些,英语大神的咱不说了。 还有上面有人说,英文if while等等比如果简单方便,那是你想当然,先入为主,如果是中国发明的,你会发现中文编程也是如此方便,最起码,遇到一些函数,比如求平均数的函数,你会首先查“平均”,但是英文,你就得上网查查,而不能直接想到求平均的函数名是什么,这只是简单的,如果你用到matlab3d仿真功能,更加复杂的编程,你就会发现,区别大了。 很多单词,你看程序的第一眼,首先不知道是什么意思,但是如果人家外国人,看一眼,可能就猜到意思了,几个单词缩写,大概意思一目了然。 如果是中文编程,你看一遍,下次你在用,你就可以很熟练的作用,写出来,可是英文,你就可能就不得单词怎么写,甚至忘了这么个函数。 编程,与语言无关。 但是编程语言会极大的影响你学习编程的速度与深度。 也会影响你写程序的思路。
上面几位,写的什么机器码,什么底层,有点专业的,我就不说那么多,就用大家都听的懂得话说。
上面我就没提有的函数参数有4.5个,单词都不认识之类的了。 就说报错吧,英文不好的你报错都看不懂,都上网查下报错是什么意思。 英语大神之类的不算,毕竟不是不是人人英语那么厉害。 比如你看如果一页都是中文的编程的编程,就算你看不懂,你也可以猜大概的结构与部分意思,也会觉的有点亲切,不那么深涩高深。 但是全英文的,你没学过,你就会觉的,这是啥,高深难懂,高大上的样子,就跟天书一样。
如果中国发明了计算机,必然有一套中文编程方法与相关中文编程理念,相关的编程专业术语,理解起来自然快。 而现在大部分都是翻译过来的,比如c++里面的派生,这可能学了很久的就理解透彻可是没学过的接触时就是不能很好的理解,为什么呢,就是因为当初翻译时,英文与中文并不是意思一一对应的,很多英文的其实没有对应的中文。 自然也就不能做到准确。 英语与中文是两种思维文化世界,有的只能做到相似,没法准确。
最后,语言各有各的优势各有各的劣势。 但是用在编程上,你说中文天然劣势,那就牵强了,中文完全可以编程。 说不定哪天,出来全新的硬件形式,还是中国人发明的,自然编程变成中文的了,也不是不可能。
英语的国家,思维是微观,推理论证,过程严谨,比如说猪能上树,中国可能就是一个笑话,但是如果在西方,就会有科学家来实验论证猪到底可不可以上树,能不能训练,之间有什么关系,得出什么结论。 中国人就会认为这人有病。 所以,科技能在西当出现也有一定的必然性,他们探索背后的理论,逻辑,实验验证。 而中国呢,有中文的国家,思维都是宏观,实用,战略思维厉害。 比如,发明了很多实用的东西,如果你问为什么,就会有人说,你问为什么干嘛,会用就行了。 这就是区别。 所以,在古代,中国人的思维更加有优势,文明程度更高,但是近代西方的思维就更占优势,而东方不问为什么的思维就劣势。 但是未来,随着科技的发展,中国如果多问为什么,再加上宏观思维,那么优势就很明显了。 只是时间太短没体现出来。 不信,在过20年,你再看看,搞科技是中国厉害还是英语国家厉害。 现在已经有苗头了。