众所周知,编程语言有一条无形的“鄙视链”。

Java和C#相互不服,并且看不起写Python的,Python看不起PHP,PHP看不起前端。而中文编程就在这个语言“鄙视链”的底端艰难生存。

有人对中文编程嗤之以鼻,相比于“人生苦短,我用Python”“PHP是世界上最好的语言”这样的评价,中文编程的待遇可没有这么好,满屏都是“史上最烂编程语言”,“汉语编程鸡肋”等评价。

甚至有程序员大放厥词,认为“中文编程,永远发展不起来!”,觉得中文编程根本没有自己的特色和自己的技术,只不过是把if改成了如果。

自中文编程出现以来,关于它的争论,从未停止过。如今,中文编程发展如何?现状又如何?

 中文编程夹缝中艰难生存

大部分人觉得中文编程起源于21世纪初,实际上,相关资料显示,中文编程最早可追溯到上个世纪60年代初期,由中科院计算机设计的BCY语言。

这才就是真正的“(中文编程的)祖师级代码”:

来源网络,如侵删

随着微机时代到来,BCY语言失去了发展优势,迅速变凉。

而后,中文编程的脚步并未停止。不少程序员尝试开发,比如基于Python2开发的中文编程“周蟒”和“中蟒”,基于汇编语言开发的O语言,还有中文小海龟、丙正正等其他中文编程。

但仔细看就可以发现,这些中文编程大多数都是生硬模仿国外编程语言,只是冠以“中文特征”,仅此而已。

因此,在自身发展受限和其他编程语言夹击中,大部分中文编程尚未发展就已夭折。如今,被留下来的中文编程寥寥无几。其中影响最大的就是易语言,被网友称为“中文编程老大”。

易语言由吴涛独立开发于2000年。不得不说,全中文界面和代码、便捷的可视化开发环境、丰富的类库、集成化开发环境等优点,易语言的出现的确帮助了很多初学者在短时间入门。

如今的易语言,早已没有当初的荣光。因为其所编写的程序容易被杀毒软件误报为病毒、处理速度慢、编译程序体积大,以及大量用户使用易语言开发游戏外挂、电脑病毒等,“抄袭”与“骗子”成了它的代名词。

某技术牛这样评价易语言:

类库、模块、框架的数目,不仅代表着功能的强大,更代表的是在全球范围内的互联网技术圈受众之广。

你问我Java有多少类库?有多少模块?有多少框架?我只能说像天上的星星一样,数也数不清。

你问我Python有多少类库?有多少模块?有多少框架?我也只能说像线上的星星一样,数也数不清。

你问我易语言有多少类库?有多少模块?有多少框架?我伸出一只手给你数清楚!

总而言之,易语言饱受诟病,逐渐淡出程序员们的视线。

最近几年,中文编程衍生出各类趣味版本,比如文言文编程、方言编程等。

文言文编程

东北话编程

上海话版本

粤语版本

来源网络,如侵删

文言文编程也好,方言编程也罢,这些中文编程并没有很强的算法与功能,更多承担的是趣味性。

华为自研编程语言“仓颉”的出现,引起巨大轰动。有人猜测,中文编程或将许腾飞,发展有望!今年,网传某仓颉程序员正面回应:“不是中文编程,特点是简单易上手,签了保密协议,不方便发代码。”给众多期待者泼了一盆凉水。

华为自研编程语言“仓颉”究竟是不是中文编程,可能需要等到源码真正公布,才能知晓。

中文编程再次陷入沉寂。

中文编程为什么发展不起来?

从上世纪60年代初至今,为何就没有一款具有影响力的中文编程,中文编程为什么没有走向发展之路?翻阅了一些资料,发现主要是两大原因:

首先,中文编程不符合市场需求,且其发展跟不上市场变化。

据不完全统计,世界上编程语言多达600多种。然而被世人熟知且是互联网主流的编程语言,也不过二十余种,其中常年占据榜首的只有Java、Python、JavaScript等十几种而已。

这十几种编程语言之所以能成为主流,是因为符合市场需求。比如Java搭上了互联网潮流的顺风车;2004年Javascript语言的一度火爆,得益于网游产业的兴起;而因为iPhone应用程序的编写需要,Objective-C流行。

同时,这些编程语言能跟上市场变化,满足某些开发需求。以Java为例,Java最开始出现,主要是为了解决跨平台的问题。如今Java语言已更新至Java18,通常6个月一更新。

而在Java、Python、JavaScript等编程语言普及之后,中文编程才逐渐发展,实际市场需求非常有限。以易语言为代表的中文编程,大多固步自封,没有创新,自然没办法有长远发展。

其次,仅靠个人力量不足以发展中文编程,国内尚没有合适的生态环境。

可以发现,中文编程大多是个人兴趣自主研发,国内互联网公司很少参与其中。正如这位网友所说,编程语言不仅仅是语言,它还是一个生态系统,需要配套的类库、框架和平台。

仅靠个人力量发展中文编程,是远远不够的。

来源网络,如侵删

另外,一门新的语言发展起来,需要大量用户的使用和反馈。而中文编程由于市场需求有限、系统不稳定、功能有限等因素,使用者极少。

来源网络,如侵删

当然原因不止这两种,还有程序员认为:

编程语言其实是一种面向计算机的独立语言,它不是英文、西班牙文、韩文,也不是中文,只是借用了一部分的其他语言的单词和符号。

计算机执行的其实是机器语言,也就是0和1组成的语言,任何编程语言最终都要编译成机器语言才能被执行。如果使用中文编程,就需要有响应的编辑器。

简单来说,用中文编程,需要机器多一项“将汉字再次翻译成英文”的功能,或者是让所有的基础库都使用中文名的函数与参数,并撰写中文文档。

这么说来,中文编程真的没有出路了吗?

母语编程,门槛更低?

中文编程非议不断,但也有人叫好。

大部分人觉得,编程门槛低却并非无门槛,英语代码的晦涩难懂以及程序运行的逻辑,都对程序员提出了较高的要求。

如果能用熟悉的中文进行编程,或许会减少人们对编程的天然陌生感。从自己熟悉的字符开始学习,代码即注释,自然语言亲和,会进一步降低门槛。

而在职程序员则表示,中文编程有划时代的意义。如果命名规则以中文逻辑中文变量中文关键字等,将会让人更容易入手,也减小了突然接到大程序项目维护的恐惧震慑。

来源网络,如侵删

任何事情都有两面性,有人支持,自然有人反对。但播妞想说,中文编程才刚刚起步,直接定论为时尚早。道阻且长,行则将至,对于中文编程,我们或许可以抱有期待。

你觉得

中文编程能代替Java吗?

欢迎大家留言讨论

程序员们,你会考虑使用中文编程吗?相关推荐

  1. java 中文乱码_好程序员Java学习路线分享如何处理中文参数

    好程序员Java学习路线分享如何处理中文参数,为什么表单中会产生中文乱码. 好程序员Java培训 产生乱码,就是因为服务器和客户端沟通的编码不一致造成的,因此解决的办法是:在客户端和服务器之间设置一个 ...

  2. 黑马程序员:Java基础总结----Java语言编程规范

       黑马程序员:Java基础总结        Java语言编程规范:参考自SUN公司文档  ASP.Net+Android+IO开发..Net培训.期待与您交流!  I.   排版规范 A.  规 ...

  3. 黑马程序员_java自学学习笔记(八)----网络编程

    黑马程序员_java自学学习笔记(八)----网络编程 android培训. java培训.期待与您交流! 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无 ...

  4. 简单的计算机程序代码,优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能...

    优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能.编程语言中,数组是一个非常重要的概念,也是一种很常用的类型.本文中通过javascript语言的代码实例,展现编程中数组的魅力.在javasc ...

  5. Q新闻丨Java 9正式版恐再延期;顺丰菜鸟口水战涉及阿里云;编程语言排行榜Python第四;盲人程序员背百万字符,用耳朵编程...

    编辑|小智 本周要闻:Java 9 正式版有可能被推迟到 9 月 21 号发布:顺丰.菜鸟口水战始末,或涉及阿里云:Node.js 发布 v8.0.0:Visual Studio for Mac 版本 ...

  6. 程序员:代码全部替换成中文,你能接受吗?

    如果将代码替换为中文会怎么办? 程序员在观看时会不会头疼呢? 您是否有这样的疑问,医院的医生真的会看医生吗?自己吃药的医生真的可以理解医生写的药单吗?医生认真写下这些药物的名称了吗?实际上,由于药用材 ...

  7. 程序员必备的21款工具与编程灵感

    点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 作者:IT程序狮 来源:https://zhuanlan.zhihu.com/p/79090704 前端 1.X-Sp ...

  8. 程序员python代码打招呼方式_某编程少年说他是Python大神,神级程序员不用一行代码教他做人!...

    听君一席话,胜读十年书. 1.扎实的python基础 个人的技术基础知识是否扎实,决定了个人是否能够做的工作层次. 比如某些Python半吊子,只能够纸上谈兵,和Python小白谈谈人生理想,而只要涉 ...

  9. 以史为鉴:初代程序员自述七十五年前的编程心得(一)

    在 1978 年 ACM 举办的"编程语言历史"会议上,Grace Hopper 海军上校作了开场讲演.作为初代程序员,加上她的特殊背景,她的自述现在看来仍有现实意义.这里对自己特 ...

  10. 某程序员吐槽:免费教妹子Java编程,妹子却不让自己找她闲聊!

    许多程序员教妹子编程.带妹子打游戏,都是醉翁之意不在酒,名为教学,实为追求,但有一个程序员小哥哥却比较悲催,他答应一个妹子当她师傅,教她Java编程,结果妹子却说,学习是学习,平时是平时,让小哥哥平时 ...

最新文章

  1. java 2d svg_SVG 2D入门1 - SVG综述
  2. Spring的声明式事务管理
  3. 如何用FineReport制作一张报表(二)
  4. [EffectiveC++]item02:尽量以const,enum,inline代替#define
  5. 基于SSM + Redis的Shiro权限管理项目
  6. Win32中GDI+应用(一)
  7. centos镜像 from_Docker 基于 CentOS 基础镜像开发环境的搭建与部署
  8. 流行趋势:大背景图片在网页设计的20个精彩应用
  9. linux spyder 安装,Python开发环境Spyder安装方法(示例代码)
  10. Timer的源码分析
  11. Java—计算球体积
  12. symbian android,Symbian^3对比
  13. 程序员必备《新手手册》
  14. java wtc_WTC的配置(二)
  15. 3D游戏建模教程:Maya如何隐藏灯光
  16. 图划分(Graph PartitionRe-ordering): METIS(5.x)ParMETIS(4.x)使用实践
  17. Ubuntu整个系统迁移到其他盘办法
  18. 若要运行应用程序,您必须首先安装 .NET Framework 4.0 解决办法
  19. IBM V3500存储更换控制器实例
  20. [原创] 树莓派使用多个联通4G上网卡

热门文章

  1. windows cmd打开新窗口关闭窗口
  2. 并发,同步,异步以及事件驱动编程的相关技术
  3. 360测绘云Quake网络空间测绘系统双领域上榜“安全牛”
  4. VSCode插件之Beautify
  5. 软件版本A.B.C这些数字分别代表什么意思
  6. 微信H5域名被屏蔽被拦截的最新解决方案(微信域名防投诉)
  7. Spark+Scala:数据分析统计
  8. 智能眼镜上可否能有“MIUI”?
  9. 智能眼镜现在是什么水平?
  10. Java高并发编程中Phaser的使用及详细介绍-刘宇