‘壹’ 为什么很多人不喜欢甚至排斥用中文编程
从事软件开发多年主要在浏览器内核,安卓框架,多媒体等领域研究的比较多,主要编程语言是C/C++ java等三种编程语言,对于易语言简单做了几个小功能,做了下尝试,从本质上讲差异不是很大,都是需要遵循一些语法细节,可能是用的时间短的缘故整体感觉还是怪怪的,主要是长期在英文编程环境下已经养成习惯,至于是不是中文倒是没有太大的感触。
说到对易语言接触时间也不短了,刚入行不久喜欢写一些技术博客,也算是结实了一些粉丝,和有些粉丝聊得比较多,其中一个人在研究易语言想通过易语言做注册机,从技术上角度不太喜欢玩这些看似很无聊的东西,架不住三番五次的劝说就多少了解一下易语言,然后看看如何实现,弄了没多久觉得实在无聊,就果断放弃了,纯正的程序员一般不太喜欢搞什么 游戏 外挂或者黑产之类的东西,但现在很多学历不高的人通过易语言在鼓捣这些东西,想从中谋取暴利,国家已经有明确的法律规定对于非法的 游戏 收益真要有人较真到底,还真是违法犯罪的事情。
有个同事讲过一个故事,有个人专门研究腾讯的一款 游戏 ,然后从中获取了几百万的收益后来被发现并报警,由于但是立法还不太完善,在里面呆了几个月罚了点钱又放出来了,易语言诞生的年份已经不短了,当初带着极好的爱国主义情怀,喜欢有一个属于中国人自己的编程语言,虽然在内部实现上可能就做了一次转化而已,起码让一些英文不好的人能上手写代码了,这算是易语言最大的贡献了。
任何一种编程语言的诞生或者存在都是为了解决当时非常棘手的问题,然后慢慢的被大家接受,通过时间的积累慢慢培养了生态链,也就是大家常说的各种编程社区,然后一群志同道合的人在里面讨论这种编程语言如何来使用,如何来改进,如果是深层次的参与者慢慢加入到核心修改小组,不停的对编程语言的版本以及未来的发展趋势做贡献,现在主流的编程语言都是这么衍生而来的,社区力量的强大与否代表着当前这种编程语言的受欢迎程度,目前就国内的编程语言而言无疑java属于老大,在开源社区里面java方面的开源项目最多,这就是生态链,生态链的建立不是一天两天的事情,需要具备很多因素,还要跟上时代的潮流。
1.编程习惯,绝大部分程序员已经习惯于英文字符的编程模式,切换成中文有诸多的不习惯,而且就编程语言的本质而言最终还是0,1的转化,中间做了一些转化而已,在执行效率上还不如英文转化效率高
2.生态链不够成熟,对于编程语言的使用者来讲什么编程语言最能解决实际的问题就采用谁,这也是生产力发展的需要,不可能为了追求狭义的爱国主义情怀就是采用一种编程语言,易语言的生态链体系哈有待继续的加强发展,毕竟任何一种编程语言都需要来自五湖四海的程序员来共同托起。
3.易语言在某些场景下还是受限,举个例子在服务端的并发性处理上就有点捉襟见肘了,不可能一种编程语言就一统天下了,这种需要强大的生态链支持,就目前状态而言易语言要走的路还是很长。
对于一个技术人员来讲,在合适的场景选择合适的编程语言,选择最佳的实现方式,毕竟对于企业来讲首先要考虑最短的时间内出成品,所有的企业的程序员都是遵从现实环境,真能解决实际问题的编程语言,本身就自带推广特性。
希望能帮到你。
实话实说,我是没有接触过中文编程的,对中文编程届名气最大的“易语言”,也只是听说过但是没用过。虽然我本身是对中文编程是比较排斥的,但是出于“想评判什么,就要先了解它”的考虑,我还是决心体会一下中文之后,再来回答这个问题。
然后我找到了“易语言”的官网,看了一眼首页我就放弃了这个想法,本人对美丑的要求很严格。
对于中文编程,我就强答一下,说说我的看法。
首先,中文编程还是发展初期,语言生态不好。不可否认中文编程确实降低了编程的门槛,易语言在中文编程做出了值得鼓励的尝试。易语言目前的前景不是很明朗,易语言好像是2000年就出现了,差不多快20年了,我翻了翻官网,感觉很久没有更新了,而且社区支持并不强大,所以并不看好。顺便说一下【生态】这个问题,很多人理解这个词有一些困难,举个例子:比如安卓和Window phone,大部分APP都有安卓版本,不一定有Window版本,这就是生态的好坏。
第二,英文编程已经先入为主了,就好像我,做Java开发已经12年了,自学python3年,这么长时间已经习惯现有的编程体系了,要切换成中文环境感觉完全没有必要。而且现在中文编程的生态又不成熟,所以不接受甚至排斥中文编程,也是很正常的事情。
第三,编程思想的重要性要远远大于编程语言。其实不用过分纠结于使用什么语言,编程最重要的是对事务的抽象能力,逻辑思维能力,和对不同的业务场景,可以采用最优方案的能力。如果有一天老板说:“从今天开始,咱们公司要用中文编程了,工资增加一位数”,我相信我很快就能学会的。
最后,每一种语言的兴起,都是因为可以很好的解决行业的某些痛点。比如php的兴起是因为互联网需要快速的编写动态Web服务;Java的兴起是适应企业级信息化,Java屏蔽了指针、内存、垃圾回收等等,可以在短时间内写出大规模的程序;而易语言,好像解决的是“想编程但是不会英文”的问题,至少在编程行业内,我们是不存在这个痛点的。
总结一下:
这个问题,本人比较合适来解答一下。我的文化水平高中,英语非常烂。10年做自动外挂 游戏 工作室,苦于没有合适的外挂辅助,自己从零开始研究编程。起初学习了按键精灵和易语言,可以做一些小程序小 游戏 ,又做了一些操作模拟脚本。后来学习了汇编,才可以做真正意义上的外挂。用易语言做了3年多中文编程,后来为了去上班学习了php,c,python,java,sql这些英语编程,开发过大型网站前后台,手机app,小程序微商城。其实编程用什么语言都是大同小异,除了个别语言之外用法都差不多。唯一的区别是用处不同、编译环境和编译器不同。可能和人先入为主的观念相关,几乎每个人学习的第一个编程语言都是英文编程,所以都很倾向英文编程,用易语言自然不习惯!而我,第一个接触的编程语言是易语言,自然对中文编程更有感觉!
大家好,我从97年开始学习编程,到今年20余年了吧,代码是写过不少。
看到这个话题我也来凑个热闹。
1、从语言的角度来说中文编程和英文,没有区别,无非一个用“如果”,英文用“if”罢了,其本质没有变化,还是用着老外的编译器,算不得中文编程,顶多算个汉化版的开发语言而已。
2、如果你每天真的要写上千行的代码的话,你会觉得频繁的中英文切换实在是太麻烦了,英文if只是两个键,中文要敲几个键呢。我最高英文打字速度是300,中文是120,说实话,我愿意用英文写代码。
3、现在的语言都是Unicode编码的,你可以用中文做变量名,编译器不会拦着你,但是同行会笑死你,鄙视你的。
4、目前所有语言大多都是老外开发的。所以你想查的资料,文档基本上都是英文的。
5、我希望有哪么一天咱们国家也能真能开发出自己的操作系统,数据库,编程语言,咱们自己的标准,大家一起努力吧。
希望大家不要再为语言而纠结了。
需求:某个变量循环十次,每次的值都加1
java:for(int i=0;i<10;i++){}
易语言:循环体(整形 变量 等于 零 ;变量 小于 十;自增 变量)
首先我们来分析阅读性,假如一个外行人来阅读这两份代码,虽然不知道for什么意思,int什么意思,但我相信正常人至少都能看懂第一份代码i=0这一行吧;但是再来看易语言写出来的代码,循环体啥意思,我只听过循环,循环体是干啥用的?整形?整形变量?还是整形变量等于?都说汉语博大精深,在不使用逗号的前提下汉语的可读性理解起来就可以有很多种意思了。
我们再来看二者的格式,容易看出来其实易语言不过是相当于把英语全部翻译了一遍,翻译后的代码仅限于我能读得懂而非看得懂。再看一下,易语言的代码量比英语多了多少?
汉语是我们的母语,如果能开发一门易懂的汉语编程语言,那么我想这无非会大大降低我们的开发门槛。但是我们需要强调的是,汉语编程语言不是简单的“翻译”,我理解中的汉语编程应该是可读性高、理解容易。例如上面的例子,如果要我“开发”的编程语言来写,我会写成这样
条件循环(变量初始值等于零;假如变量的值小于十;那么变量的值每次加一”){};
这样的写法我相信任何人都能看懂读懂知道他的用法理解这个代码是用于做什么的。这才是真正的汉语编程。如果要只是翻译英文编程语言,那么我为何不直接学英文编程语言,我学会了英文编程语言也就意味着我的编程能力拓展性更高,毕竟现在市面上无论是已有技术还是新的技术都是英文写出来的
中文编程,我可能比较有发言权
‘贰’ 为什么中文的编程语言使用的人非常少
原因也很简单:
1、中文的编程环境就很少,知道和使用的人也就很少。
2、现有的几种中文编程环境都是模仿比较成功的英文环境而来,还不完善。
3、除了界面和内容是中文外,没有其他比英文环境好的亮点。
4、编写出的代码很难在其他环境重用,被限制死了。
5、绝大多数编程教科书都是针对英文环境的。
你能找出中文环境的其他优点吗? -_-
‘叁’ 为什么很多人反对中文在编程中的使用
首先我要声明:排斥使用中文编程和爱国不能混为一谈,坚决抵制不使用中文编程等同于不爱国的道德绑架。不使用中文编程的主观因素和客观现实存在有很多,个人使用习惯、开发效率、开发所使用的ide工具不支持等因素,都会让程序员更偏向使用英语编程。
先来说说历史原因,编程起源于外国,编程语言,计算机,甚至上层的开发工具,基本上都是外国人使用英语来开发的,这些最大的问题就在于,外国人并不会给中文来做适配,就算适配了,也无法使用中文来编程测试,因此遇到了bug也无法修复。这大概是中文编程目前最大的制约。很多码农说现在的主流编程语言都是Unicode编码都支持中文,这很正确,举例java,但是我想他们根本呢没有用过中文来写代码,完全没有考虑过ide工具是否支持,编程语言并不是编程的全部,虽然脱离ide工具我们也能够编译代码,但是脱离了ide工具我们的开发效率会降低很多倍,于是乎现在企业开发基本不可能脱离ide工具,没有的可能都要专门自己开发一套。
再来说说很多码农对于中文编程的真实内心独白:用中文写代码会很垃圾,很廉价?懂英文比较厉害?中文写的代码不行?要便于给外国人看?认为中文编程很多余?习惯了英文编程了不想改变?虽然有些直抒心意,但是也在一定程度上直观反映了排斥使用中文编程的码农心态。
我认为制约国内程序员使用中文编程的最大因素是完善框架的缺失,诸如易语言之类的其实都不过是伪中文编程,很多底层的东西也还是用到的英文,而底层的英文又限制了上层框架的编写,语法框架无法的限制导致了上层编写程序的时候并不适配中文,这样的编程不仅不能提高效率,反而增加了理解难度。
所以我认为中文编程最大的难点是怎么去编写一套适合中文的编程框架,而不仅仅是把英文翻译成中文,这样的中文编程其实真的没有多大意义。
‘肆’ 为什么没有中文写的编程语言
编程语言是一种程序员与机器沟通的工具,程序员的UI(用户接口),用于定义业务逻辑与指挥计算机工作,作为工具首先就是上手效率要高,不要因为为了打几个中文而中断思路。无论你用拼音输入法还是五笔或者是直接拼音字母,你告诉我要表达“如果”这个含义,哪个词敲键盘次数少,次数少的效率就高:“if”“ruguo”。
其次,编程的瓶颈是在指令的语言吗?在如今网络时代谁还不懂几个英文,再则,计算机语言不是人类语言,它只是借用了人类语言中20-30个关键词作为基础指令,方便记忆而已,业务逻辑才是程序要考虑的,以满足最终客户需求完成任务。用“如果”或是“if”,只要约定好,计算机都会翻译成二进制,那么对于计算机它是无所谓你用什么“语言”,编译器能编译就行,而为了视觉上亲切一些,牺牲可读性、输入效率,源代码长度,以及潜在的代码安全问题,而得不偿失。当你代码量上千行后,看着满屏中文你也许会突然忘了你接下来要干什么。所以专业人员是不会考虑用中文的。
编程的核心是业务逻辑,其本质是算法,其基础是初中数学,当然有高数基础最好,因为某些业务逻辑,如果有高数基础,代码量会大大降低,代码会更简洁明了。而中文还有个严重问题就是代码安全性。中文输入法中存在各种特殊字符,有些是不可显字符,有些是视觉特征不明显容易造成歧义,比如你要随时注意全角半角,因为计算机认为全角空格和半角空格是两个不同的字符。试想你本来正被程序中嵌套循环或者各种逻辑错误而烦恼,又被中文带来的字符不明确造成困惑,如果你还能坚持下去学习我是很敬佩你的。
当然作为行为艺术,玩玩是没有问题的,写个小程序给小伙伴展视一下娱乐娱乐完全没问题,但正经程序员看到了会斜眼看你,当然你只是学着玩,可以考虑易语言,不过它只是VB的马甲,语言规则遵循VB的语法。
‘伍’ 为什么不可以汉语编程
有汉语编程,目前最好的是“易语言”。
计算机根本不管你是英文还是中文,它只用高低脉冲来产生一些信息(还是高低脉冲),人类便把高低脉冲用1和0来表示,这就产生了机器语言。这里跟人类的自然语言根本就没有关系,后来为了编程的需要,人类发明了汇编语言,因为这是外国人发明的,所以里面的各种命令都是英文,再后来为了更好接近于人的自然语言,又发明了高级语言,当然也是英文。
易语言作为高级语言的一种,它采用的是中文,如果说它是汉化,可能并不严谨。汉化是对某个外文软件进行本地化,并不改变该软件的功能和结构,而易语言虽然是用英文编程软件(据说是VC)开发的,但它不是任何其他编程软件的汉化版,因为它的功能和结构是属于它自己的。如果非要说易语言的编程界面和功能与VB等相似,那只能说天下大部分编程工具的功能和结构都是相似的。
是直接从中文编译到机器码还是通过转到英文再到机器码,这要看有没有完善的编译器,如果没有的话,只能通过别人的编译器来编译。现在的易语言解决了面向人的问题,但面向计算机的问题可能没有彻底解决,不过这个问题并不轻松,只能一步步来。
所以这些东西只能根据需要慢慢来,先解决最迫切的,比如让国人普遍用中文编程语言编写软件,然后才考虑底层的东西。只有解决了迫切的需要,你才知道后面的需要是什么。不能搞大而全的东西,那样只会让自己不堪重负,最终什么也做不成。
‘陆’ 华为自研编程语言“仓颉”试用开启,你觉得汉字编程靠谱吗
‘柒’ 中文编程语言的特点
用什么语言来表达编程思路其实是一回事,英语可以编程,汉语同样可以编程,而且汉语编程作为计算机语言更符合自然语言。
1.打破了英文编程语言的垄断,可以有效减少信息技术对英文的依赖,对形成全面的信息产业独立体系有巨大推动作用。
2.中国人用自己的编程语言,才更有利于各种程序的编写。不但简化学习过程,而且提高了编程效率。
3.汉语编程从根本上可以解决信息技术化发展的问题,只要会写汉字,就可以学习编程,而且汉语编程所编的软件可以很好地解决方方面面的问题。
4 .用什么语言来表达编程思路其实是一回事,英语可以编程,汉语同样可以编程,英语的关键字只是表意符号而已,汉语也可以作为表达编程的语言之一,只是有一些技术上的问题需要克服。我们可以看到,“易语言”把汉字输入比英文输入更有优势表现的淋漓尽致。
‘捌’ 我们究竟应该如何看待易语言这门中文编程语言
前途无亮啊。汉字的字符集大,识别一个汉字比识别一个字母慢了好多倍。大项目的话,坑死编译器啊。词法分析就跪了。此外,写小工具的话,其它语言也很随意。大约应该是易语言刚出来那会儿,一大堆初涉编程的人闲得蛋疼,做不了大东西,就写写小东西玩儿了。