为什么没有一种编程语言是中国国内开发出来的?
首先,中国国内开发的语言是存在的,而且不止一种,比如“易语言”。
但是,确实没有国产的、流行的编程语言。为什么?
编程语言的先发优势编程语言是需要人投入时间和精力去学习的;同时,较多的使用者和项目,也能促进语言本身的改进,包括bug修复,功能的改善。
举个例子:Java语言先被开发出来,此后微软模仿Java搞了个改良版的Java,即C#。微软投入了大量的资源对C#进行优化、扩展、推广。无论从投入资源还是设计水平来说,C#都不亚于甚至超出了Java的水平。但是,最流行的仍然是Java,C#完全不是其对手。
编程语言要解决需求痛点可以这样说,每一种流行的编程语言都是为了解决开发中遇到的痛点而设计出来的。
当这一新语言解决了开发中的痛点(不一定是当初设计的初衷),就有了流行起来的潜质。
比如C语言,解决了当时为不同硬件开发操作系统的痛点--移植困难。用C语言开发的Unix系统,一次编写,到处都可移植使用。
比如PHP,通过模版化页面大幅度提高了早期网页+CGI方式的设计效率。解决了早期网页设计的痛点。
比如BASIC和Python,都是为初学者设计的方便易学的语言,确实也解决了当时编程语言学习较难的痛点。
而当这些痛点被解决,不再是痛点以后,再“发明”类似的语言,就没有竞争力了。
国产编程语言的流行之路在计算机发展的早期,我国是跟随状态,往往一种技术已经成熟了,国内才跟进。
这样一来,没有遇到早期的痛点,也就很难产生流行的编程语言。
其实当初的“易语言”,也试图解决不懂英语的国人学编程语言难的痛点,也获得了部分成功。只是还没有达到流行的程度。
而到了现在,我们可以说是走在计算机发展的前沿了,能接触到技术发展早期的痛点,从这方面来说,是有新语言诞生和流行的条件了。
但是,别急,还有一个问题。新的编程语言往往由时间比较宽裕、经验比较丰富的程序员所创造。我们现在还缺乏这种环境。
当程序员们996,甚至715,为当前的项目疲于奔命时;当经验比较丰富,但加不动班的程序员们被扫地出门,去送外卖时,是很难有新的、好的编程语言诞生的。
为了开发一门“国产”的编程语言而开发,这不是真的需求和痛点。
当真实的需求和痛点出现时,面对它的程序员有没有能力开发出一门新的,能解决问题的语言呢?