中文编程是伪命题?国际化浪潮下,程序员为何坚守英文阵地?

在知乎上,“凭啥外国人能用母语编程,中国程序员就得啃英语”这一关于“中文编程”的问题引发了热烈讨论。不少评论试图以“不存在英文编程”来否定中文编程,在我看来,这些观点颇为肤浅,接下来将从三个方面剖析其肤浅本质。

编程语言属于人工语言,并非自然语言,更不是英语,这是程序员们的基本常识。总有一些人反复强调这一点,甚至将其作为反驳中文编程的论据,实在令人啼笑皆非。

深入探究他们的逻辑,会发现他们误以为人们追求中文编程是因为不了解编程语言是人工语言,或是想实现中文自然编程语言,甚至想用中文自然语言对抗并不存在的英文自然语言。

实际上,当下人们所追求的中文编程语言仍是基于中文标识符和中文思维习惯的人工语言。所以,那些反对中文编程的人,你们尽可以提出各种反对理由,但请别再反复宣扬这种牛头不对马嘴的观点了,实在有失水准。

更深层次来看,这些评论仅仅机械地关注编程语言的标识符类型和语法逻辑,忽略了文化因素对不同人群的影响。

西方人自幼接触拉丁字母和英文,对其天然具有亲切感,理解、记忆和接受基于英文标识符的编程语言相对容易。

而对于中国人、韩国人、日本人、中东人等非西方文化背景的人来说,英文编程语言使用起来并不友好。

我们如今能熟练使用英文编程,是付出了多年努力学习英文的结果。

正因如此,许多非英语母语国家都曾尝试开发以母语为基础的编程语言。

但这些尝试大多未能大规模成功,原因在于这些国家母语人口、经济规模、软件开发者数量及其在世界上的影响力有限,导致开发出的编程语言难以形成广泛影响。

但中文编程的情况不同。汉语拥有庞大的使用人口、数量众多的开发者、广阔的软件落地市场以及强大的经济基础,具备诸多优势。一旦出现优秀的中文编程语言和开发环境,完全有可能被市场接受。

认为中文天生不适合做编程语言的观点同样肤浅。

英文应用于编程经过了几十年的发展,才形成了良好的标识符、语法和编程规范习惯。

如果中文有足够时间探索应用于编程,同样能够摸索出适合人们习惯的标识符、语法、表达式和逻辑习惯。

实际上,已有不少经验表明,在很多场合,中文标识符和 API 比英文更简短、明确和精炼。

那么,为什么当下大多数程序员只能使用英文编程呢?一是没得选,全球多数程序员都在使用英文编程;二是迫于工作压力,周围人都用英文编程,若不跟随,可能面临被辞退的风险;三是英文编程生态成熟,具有先发优势;四是虽然各国都有部分程序员使用本国母语标识符,但尚未形成主流;五是若开发母语编程语言,需立足本土,明确使用场景,先生存后发展。

假设用中文写程序,如“对于变量 i 在范围(10)内:打印(“你好,世界!”)”,看似简单,实际操作却困难重重。中文关键词较长,增加了阅读代码的难度,其语法规则也难以与现有技术体系融合。计算机领域的专业名词、开源代码和国际 API 标准大多基于英文编写,强行用中文替代会增加学习难度。

中文写起来比英文复杂,变量名容易让人混淆,例如“指针”翻译成“指向器”,“类”翻译成“类别”,反而不利于理解。而且使用中文编程环境,长期的维护和更新也是巨大挑战,因为现有的开发工具、API 标准和代码库都是基于英语构建的,要打造一套完整的中文编程系统,几乎是不可能完成的任务。

回顾历史,中文编程的尝试早在上世纪九十年代就已开始,但均以失败告终。易语言就是典型例子,它采用全中文语法,虽让零基础者易于上手,但过于封闭,无法与国际流行技术接轨,语法简单像玩具,难以承担大型项目,还因被用于开发非法软件而声名狼藉。

日本和俄罗斯也曾尝试用母语编程,同样失败了,这些尝试不仅未能取代国际通用编程语言,反而因封闭性限制了企业发展。

在全球化技术环境下,单独发展中文编程可能会使中国开发者难以融入国际主流圈子,且打造全新中文编程体系困难重重,投入巨大且可能得不偿失。

中国程序员未来应积极融入全球技术大环境,在全球通用技术标准下提升实力,掌握技术话语权,而非另起炉灶发展与国际脱节的中文编程。

尽管中文编程困难重重,但不应完全放弃探索。在现有编程体系中,我们可以尝试将中文的优势巧妙地融合进去。

例如在一些面向国内特定领域、特定用户群体的项目中,结合中文进行局部的创新和优化。这既能充分利用现有的强大技术基础,又能体现中文在特定场景下的便利性。

在教育层面,我们应注重培养学生的编程思维,让他们从一开始就深刻理解编程的核心在于逻辑表达,而非纠结于使用何种语言。

在教学过程中,适时引入一些关于中文编程探索的案例进行讨论,激发学生的创新意识,培养他们对本土技术发展的关注和责任感。

总之,中文编程虽然目前面临诸多难题,但它为我们提供了一个极具价值的思考和探索方向。我们应以开放、包容的心态,在顺应全球技术发展趋势的同时,深入挖掘中文在编程领域的潜力,积极探索适合中文编程发展的道路。

通过各方的共同努力,为中国乃至全球的技术发展贡献自己的智慧和力量,推动编程领域不断向前发展,让中文在编程世界中找到属于自己的独特位置 。