为什么中文不能用来编程呢?

大街凤凰岛


就我们平时所接触到的常用编程语言,Java、C、Python 似乎全是用英文编程,更确切地说,应该是用 26 个字母以及一些符号来进行的。怎么就不见人用中文编程呢?

易语言是中文编程语言

其实在 2000 年的时候,易语言就以一种中文编程语言的方式出现,不得不说极大地降低了程序学习的门槛和难度。虽然经过了一段时间的发展使用,但是使用中文仍然存在着大量不便和存在其他问题,而没能成为主流的编程语言,直到现在使用的人也不多。虽然不为人所熟知,但是不能否认它的存在。一些非程序员群体并不知道这个语言,就有了这样的问题。

主流编程语言也不能算是全英文

目前来说,Java,Python 等语言仍然很火热,对于不懂程序的群体来说,看一眼代码,就觉得全是用英文编程,其实不然,真正称得上英文的也就是那些关键字,而这些关键字总是那么一些常见的,如 class,static。所以,更准确应该说是通过 26 个字母和一些符号来编程的,Java 语言有它自己的语法,其他语言也一样。而这些编程语言中的语法跟英文的语法表达并没有直接的关系,也其实不能算是英文编程。

编程工作国外先行

为什么最后留下来的是用字母符号组合的编程方式呢,不是用中文加符号呢?其实也有一种先入为主的势态在里面,早些年计算机技术出现的时候,都是先从国外开始的,这其中包括电脑,通信网络,二进制,各个编程语言,操作系统,开发工具等等这一整套,广泛采用英文并不奇怪。其中的编程语言就采用了更加国际化的字母符号组合,彼时中国在相应领域并没有多少话语权,再者使用中文相对来说局限性很大,相比于已经成熟的其他语言,很难与之抗衡。

中文汉字编程理论上可行但是目前的开发环境已经不再允许,很难被人接受,也没有使用空间。一开始那些主流编程语言的创立就是用英文字母进行的,一直延续下来,被越来越多的开发者接受和使用,生态已经十分完善。


stormzhang


不是中文不能用于编程,而是目前来说并没有一个成熟的中文开发者生态!

  • 中文编程早就有,但不能当饭吃

其实不是没有中文编程,软件工程师吴涛先生,现在是大连大有易语言公司的总经理,就已经开发出了一套中文编程语言,并且有开发工具,但是因为应用场景有限,生态不够,而且语言本身也具有很大的局限性,所以没办法得到普及。

2001年1月:发明了中国自主知识产权的中文编程语言——易语言。总体设计、详细开发、所有的关键技术全部由本人完成,70多万行的源代码也均由吴涛本人具体编写实现。

这是关于易语言诞生的介绍,但是这款语言终究不可能像Java、C、C++、C#、JavaScript等等编程语言一样,成为主力开发群体的编程语言。并且语言在设计上有很多问题,而且很多设计参考了微软的VS等体系,再加上没办法获得开发者生态支持,自然没办法成为主流语言。

  • 为什么没法普及,因为历史沿革

大家要明白一个问题是,那就是计算机科学技术,这门学科领域从一开始就是来自英语世界的,从操作系统,网络通信,TCP/IP协议,编译原理,算法,数据结构,编译原理等等包括你今天说的internet互联网,几乎全是那群用英语的人发明的。

你了解的unix/linux啊,macOS啊,Windows啊,vim啊,emacs啊,C啊,C++啊,Java啊,swift啊,Lisp啊,visual studio啊等等与计算机有关的工具都是基于英语环境以及英语使用者设计的,这就是根本原因。

举个例子,有几个人会用毛笔写英语?有几个人会用川菜的做法做沙拉?又有几个人会用古筝和枇杷给摇滚乐伴奏?

  • 基础研究差很多,我们仍需努力

其实这是历史沿革,也是没有办法!

我们在基础研究领域,比如操作系统,半导体芯片,深度学习,开发生态等等基础研究领域还跟美国有很大差距,这是没办法回避的事实,要知道我们国家有计算机比美国落后了多少年,在核心专利核心技术领域的差距不是一天两天能缩短的。

好在今天因为移动互联网的发展,我们在应用开发领域的进步已经是行业领先了,未来这些大公司将会逐渐承担起底层生态建设的重任。

最后总结是我们不能夜郎自大,但也不要妄自菲薄!

我们目前已经有了很多进步,我们的鸟哥惠新宸就是PHP核心开发组的三个成员之一,我们也有白鹭时代这么棒的开发者工具生产商,我们还有Hbuilder这么棒的前端开发工具,饿了么基于Vue做出了这么棒的element,蚂蚁金服打造了ant design这么棒的设计语言,阿里巴巴做出了最棒的商业化Java代码规范......

作为一个一线技术行业从业者,我想说的是:我们有差距我们知道,但是我们从来没有放弃过努力!


EmacserVimer


作为科班出身的码农来帮你解惑吧,其实根本没有英文编程还谈什么中文编程,事实上我们都是用C语言、C++语言,JAVA语言,Python语言编程,它们都有自己的语法,用的也不是英文语法。编程中用到的英文实际就是一些关键字(类名,函数名,变量名等),都是很简单的字符,其实跟自然语言关系不大,对机器而言最后都是0和1,跟自然语言更没关系。编程对国人不友好的其实是好的教材、资料、说明都是英文的,阅读起来困难一些。

程序员编程、然后编译、处理器执行,这就是程序,这里面编译器还是老外写的呢,操作系统底层还是C语言。不考虑这些,先用C语言写个最简单的hello,world看看换成中文是什么样的

#include
int main(void)
{printf("\\nhello world!");
return 0;
}

翻译成中文就是

#包含
整型 主函数(无返回)
{打印(”\\回车换行 hello world!");
返回 0;}

明显更麻烦,而且没必要,你就是英文再烂这些简单的单词还是可以记住的吧,事实上编程语言也一直在改变,最开始都是0和1,然后因为太不友好有了汇编语言,后来又有了C语言,再后来可视化的IDE编程崛起了,对于大众来说有更简单的编程,比如按键精灵这样的,还有一些启发智力的编程机器人,都是最简单的编程,而评论里人们说的易语言启蒙编程还行,工作就别想了,胜任不了训练的是一种编程思想,如果你纠结于中文还是英文,即便全改成中文你也学不好。


补充

中文和英文都是自然语言,不是编程语言,如果认为编程的门槛是几个英文单词的化那这人对编程的认知基本是零。

C++ 发明人都是丹麦人,母语是丹麦语。

Python 的发明人是荷兰人,母语是荷兰语。

Ruby 的发明人是日本人,母语是日本语。

Pascal 的发明人是瑞士人,母语估计是德语。


萌哈科技


计算机的编程是指计算机为了解决某一特定问题,发出特定指令,而设计的一种特殊语言代码,也称之为程序代码。电脑接收到这一类的程序代码信息之后,会执行特定行为来获取最终结果。使用的程序过程中,大家多使用英文和数字来编写代码,而很少见到中文代码。


其实使用中文编写代码是可以的,因为任何一种代码,最后都会转化成二进制,来完成最后的指令操作。对于其他职业工作人员,也许对程序了解并不多,但是对多数程序员来说,他们接触的的易语言,就是使用中文语言编制的代码。但之所以不大量使用中文来编写代码,还是因为在使用中文编写过程中,存在的问题比较多,而且在使用的过程中并不是很方便。


第一,中文的语言博大精深,有很多的倒装句和省略句等多种形式的语句,还包括多音字等,这样电脑不能够很快的识别,运转速度较慢,且在使用的过程中,代码也会显得比较臃肿,不简洁美观,也不方便其他国家使用者识记,因此,相对于中文来说,英文26个字母优势更大。而且我们使用的参数都是字母加数字的组合,如果在填上中文就会显得非常的累赘,画蛇添足了。


其次,我国的计算机事业发展的相对较晚,我们多采用的是外国计算机编程代码,如果有国内另外翻译或者是编制一套代码系统,并不是看上去的那么简单,过程之中比较繁杂,会耗费大量的人力和物力,不符合当下发展国情。


但是我们相信在不久的将来,我们国内也会有一套成熟完善的编程语言,等到我们国家的计算机发展真正的赶超外国,主导计算机领域发展时,一定可以研发出一套更优质的中文语言编程。


决胜网


首先,编程是可以用中文的。只不过大部分的编译器都是外国人写的,国人写的编译器寥寥无几。那怎么用中文编程呢,其实很简单。

比如用中文编程,打印hello world,那可以把所有的英文字母,英文字符替换成中文的。同样能够用文中编程,实现打印效果。替换代码如下:

QString tmp = str.replace("主函数\

火星一号


写那么多字干嘛,这个问题很简单就可以回答...

理由如下:

1.编程语言初创时本身就基于英文字符指令,在字节上占有优势(中文占两个字节)

2.中文不是国际通用语言,所以也少有团队专门去开发汉语版的编程软件。

3.中文也可以实现编程,只是没有必要,一是因为要把中文语义转化成英文指令这样的事情非常麻烦,也许只有哪个程序员当做爱好自己研究,二是中文语言并不通行,所以多此一举。

所以结论是,中文可以用来编程,前提条件是必须有一款专门适配中文语义的编程软件或者编译器,你写这个编译器还是得用英文来写,写出来适用于哪一款底层语言呢?不管是C++、Java、还是Python,这些语言都在不断升级,那你中文也要跟着不断升级,这对于开发者来说简直就是噩梦,谁会为了这个事儿去花心血研究?

明白了么?


猫眼智客-杨明慧


谁说中文不能去编程?中文也是有编程语言的。大家可能不知道有一款编程语言叫做易语言,他也是用中文来编写的,它诞生的时候是十分的,也很抓眼球,但是他没有走好,发展的也不壮大,以至于很多人都不知道还有这么一款编程语言。

中文是可以编程的,只不过目前对于我们来说,中文编程还是比较的麻烦,为什么这么说呢?首先,我们的键盘都是输入我写字符和字母,而电脑里要显示中文,必须通过这些字符和字母进行一次转换,也就是我们的这些输入法。对于程序员来说,你能用字母来完成的事情为什么还要再转换一次,来增加工作量呢?这也是中文编程,不温不火的原因。

所谓编程语言,就是进行人机对话的一种语言。提起他只认可101010这种二进制的代码,最早出现的就是机器语言,因为机器语言太难控制了,后来出现了一种过度的语言,叫做汇编语言,汇编语言比机器语言要来的简单,但它也属于一种低级语言,后来的高级语言的出现,就是把人们常用的语法和机器语言进行近似化了。编程语言的发展是越来越简单,也越来越接近人的正常的语法。这是一种大的趋势。

根据这种趋势来分析,以后,中文作为一种编程语言也是会在编程语言的世界里占有一席之地的。一般不会在现在这种键盘录入的时代。

中文作为一种编程语言,我估计会在下一个智能输入时代,那时候语音,手势可能会作为编程的一种模式。中文到时候会大行其道。


历史麻辣锅


为什么中文不能用来编程呢?目前是有中文开发语言的,只是作为习惯了英语编程的人来说,总感觉有些别扭而已。而且要推广使用中文开发语言,起码还得相当长的时间来推广,但能不能达到效果则不好说了。


绝大部分公司或个人不用中文开发语言,这里有习惯。毕竟绝大部分人都是从英语开发语言起步的,已经习惯了英文开发语言的思维逻辑和使用习惯,这不是一朝一夕可以改变的。比如在英文开发语言里,绝大部分习惯了判断循环等这样的循环例子,如果用易语言这样的中文写出来,看着习惯还是不习惯呢?

判断循环首(信息框(“本源代码在这个论坛下载的?” + #换行符 + ,) = #否钮)

关闭系统(#重启,真)

结束()

判断循环尾()

这只是极其简单的一个例子,作为传统英文开发语言过来的人还是有些不习惯的。


计算机毕竟是从英文系国家发明并开始的,英语可以说是目前使用最广泛的语言,是适合于计算机的,其字母容易记。即使英文开发语言中有一些比如语法等等单词,但要记住只要花时间也并不难。英文已经从小学就在开始学习了,要记住这些编码的英文对于受到一定教育程度的人来说不会有太多的障碍的。对于中文可以编码来说,也只是使用了极短的时间,汉字相对较复杂而且是双字节,是不是还有其它意想不到的效果,比如反病毒等等,还需要进一步验证。


中文开发语言的生态建立不容易。就拿易语言为例,其最早可追溯到2000年就发布了,虽然已经发展了一定的市场而且拿过不少的这样那样奖项,但相对于英文开发语言的规模和生态完全可以说是没有存在感。


有些核心技术必须要有自己的,不然一到关键时刻就会被卡脖子。而有些东西是否一定国外有什么我们中文就要有什么呢?即使有了应用范围又有多大呢,实际意义有体现在何处呢?中文开发语言的使用范围基本受限制,试问除了中国大陆,其它还有市场吗?


当然不是说像易语言一样的中文开发语言就一无是处,还是有正面意义的。比如可以适用于不太愿意使用英文或者没有英文基础的开发人员,或者适用于培训中小学生的编程思维等等还是有意义的,另外能搞出这样的开发语言也是相当不易,而且也是有相当技术底蕴是值得称道的。也许搞出一个自主的英文开发语言,能攻占全世界,比如Java、PHP这样的语言也许更值得称道。


图片来自于网络,如有侵权请联系作者删除,更多分享请上部关注【东风高扬】。


东风高扬


只是发明人不是中国人,如果是中国人,世界一定都会学中文。在中文环境里,绝对产生不了数理化等科学,比方说化学上,高分子公式怎么用中文表述?没办法,这是中文的先天缼陷,我们要承认。

中文汉字编程,还不如中文拼音编程,其实很多程序员就是中文拼音和英文混合代码,比如变量、函数,对象名称的定义,有时候用中文拼音或者缩写也巧妙。

英语组成是一维的,主要是逻辑关系,而中文是属于三维的,一句话的意思除了本身意思外,还要看时间,空间。比如:夏天衣服能穿多少穿多少,冬天衣服能穿多少穿多少。按照这个中国人一看就明白,英语就不一样了。

中文完全可以用来编程,比如国内发展较好的易语言,很多都用易语言写过外挂,易语言有很多框架可以让你直接使用。虽然如此,但中文却不适合做主流的编程语言。因为英文影响力最广,几乎都会学英文,学起来也不太难,还有很多开源代码需要全世界各国的人来优化,所以说不适合做编程语言。


笑搞


一、电脑是老美发明的,所以编程是英语;

二、可以用汉语编程,但对电脑来说,汉语英语都一样,都需要编译成电脑的二进制算法;

三、汉语编程体积大,代码不精简,主要原因是汉语一个汉子占两个字节,英文字母占一个字节。假设if 语句,“if”占两个字节,换成中文就成“如果”就占四个字节。一个大型程序有几十万行代码,换成汉语编程所占用空间大幅度增加,而且编译更加费劲。


分享到:


相關文章: