敢问中科院计算所副研究员刘俊明:为何看不到中文编程的需求和优势?

简介: 在此,希望学界能正视业界对中文编程的巨大需求,共同实践研究相关技术,而不是人云亦云地用似是而非的理由贬低唱衰。因为,你们背负着下一代业界人才的教育重任,而中文编程,不能、也绝不会再被耽误二十年。

刚看到 @IT人刘俊明 的头条文章《为何国内IT行业没有广泛采用中文编程语言》(不知为何知乎号未发此文)。作者身为中科院沈阳计算技术研究所副研究员,是如何用寥寥数百字来阐述这个大题目呢?

2020-07-02_nagging1_1.png

重点:
1) “国际化”
2) 生态难构建

2020-07-02_nagging1_2.png

重点:

3) 没有新的应用场景,难以产生新的编程语言
4) 行业领域巨头才能够整合资源开发编程语言

首先,虽说题目的主语是“国内IT业”,此文几乎丝毫未从国内 IT 业的角度分析需求,而是将唯一一点中文编程语言“缺乏”的特性——“国际化”拿出来作为中文编程语言不符需求的佐证。

且不论公司或项目的“国际化”是否就必须沿用英文编程语言,也不论中文编程语言是否能为国际化开发出相应的语言特性,现实是——国内项目有国外开发者参与的比例极小。对于占绝大多数的仅有国内开发者参与的项目来说,使用中文编程(包括在英文编程语言开发中使用中文命名标识符)完全没有硬性障碍。如果作者连这显而易见的现状也不了解,何来的底气讨论“国内 IT 业”呢?

还必须指出,作者似乎将 IT 业与互联网行业画了等号。而实际上信息技术产业远远超越互联网范畴,比如各种国内行业相关的专业软件,在开发时就经常出现很难用英文恰当命名中文术语的情况。这正是中文命名就可以立刻大展拳脚的领域。

至于 2、3、4 则不值一驳。只要对编程语言现状有所了解,就该知道在已有应用场景下、借助现有语言的生态、对现有语言特性改进演化而产生的新英文编程语言比比皆是,当然也有并非行业巨头开发的。凭什么中文编程语言就不能走这条已经过充分检验、大有成功先例的路?用这样站不住脚的理由,让人无法不怀疑作者对编程语言常识和业界进展的了解程度。

即便指的是中文 API,早在近二十年前就由名不见经传的小公司创建了易语言,并倚靠社区力量完成了桌面等领域的全套常用 API 以及包含中文开发辅助功能的 IDE,至今仍有大批忠实用户。作者即使对其不熟悉也应有所耳闻,不作调查就发出如此言论是严谨治学态度吗?

作者的偏颇之词虽然令人瞠目,但正反映了一个社会现实:中文编程的内涵、作用和意义几乎从问世起就被网络谣言和段子歪曲、抹黑,以至于外行人和新手听到这个词就下意识地弃之如敝履。久而久之,如作者这样应该更加理性客观的专业人士也难免随波逐流。

就像简单的中文命名标识符就能立竿见影地改进代码可读性、提高开发效率、降低维护成本,虽然在开发者社区已经是广为人知的常识,但在某些高校、培训机构的老师口中仍是禁区,不但避而不谈常用编程语言都支持中文命名,甚至看到学生如此实践还横加阻拦。

在此,希望学界能正视业界对中文编程的巨大需求,共同实践研究相关技术,而不是人云亦云地用似是而非的理由贬低唱衰。

因为,你们背负着下一代业界人才的教育重任,而中文编程,不能、也绝不会再被耽误二十年。

相关文章
|
2月前
|
自然语言处理 关系型数据库 MySQL
PHP编程入门:构建你的第一个网页应用
【10月更文挑战第29天】本文旨在引导初学者步入PHP编程的世界,通过深入浅出的方式介绍PHP的基础知识,并指导读者如何动手实践,搭建一个简单的网页应用。文章不仅涉及PHP代码的编写,还包括了环境配置、项目结构设计以及前后端交互的基本概念。适合对Web开发感兴趣且希望快速入门的朋友阅读。
52 0
|
5月前
|
Rust 安全 Java
神秘编程世界惊现独特规则,Rust 核心特性究竟隐藏着怎样的秘密?快来一探究竟!
【8月更文挑战第31天】在编程领域,Rust 以所有权、借用和生命周期等核心特性著称,提供强大的内存安全保障。所有权确保每个值有唯一所有者并自动管理内存,避免手动管理内存带来的问题。借用则允许临时访问值而不转移所有权,确保内存安全访问。生命周期机制在编译时保证引用的有效性,无需运行时检查。通过对比 Rust 与 C/C++ 的示例,可以更清晰地理解这些特性带来的优势。
42 1
|
5月前
|
存储 程序员 C语言
揭秘C语言:这些核心知识你掌握了吗?一篇文章带你突破编程基础,开启高效编码之旅!
【8月更文挑战第22天】C语言作为编程基石,以简洁高效著称,历经数十年仍备受欢迎。本文通过梳理C语言的核心概念,帮助读者深入理解并提升技能。适合各水平读者。基础语法从`main`函数开始,如示例中的“Hello, World!”程序所示。C语言强调头文件包含与语句结尾的分号。变量和数据类型丰富多样,如`int`、`float`、`char`等,合理选择可优化内存使用和性能。指针用于间接访问内存,是C语言的关键特性。控制结构如循环和分支使程序逻辑更灵活。函数支持代码复用与模块化。深入学习还需掌握预处理指令、文件操作等高级特性。通过系统学习与实践,你将能更熟练地使用C语言,构建高效稳定的应用。
75 4
|
8月前
|
传感器 人工智能 物联网
【C 言专栏】C 语言与硬件交互的方法
【5月更文挑战第4天】C 语言在硬件交互中扮演关键角色,主要通过直接访问硬件寄存器、中断处理、I/O 端口操作、内存映射I/O和设备驱动程序开发。挑战包括硬件多样性、实时性要求和错误处理。随着物联网和人工智能发展,C语言与硬件交互的需求增加,未来将面临更多新硬件和技术的挑战。本文旨在帮助读者理解和掌握这一领域的知识,以实现更高效的硬件互动。
220 1
【C 言专栏】C 语言与硬件交互的方法
|
8月前
|
前端开发 算法 JavaScript
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
145 0
|
机器学习/深度学习 人工智能 JavaScript
直连Colab,支持20种编程语言:谷歌版ChatGPT代码水平反杀了?
直连Colab,支持20种编程语言:谷歌版ChatGPT代码水平反杀了?
188 0
|
存储 前端开发 算法
1024程序节|完全开源、编程原生体验、轻量化,不来试试吗
1024程序节|完全开源、编程原生体验、轻量化,不来试试吗
195 0
1024程序节|完全开源、编程原生体验、轻量化,不来试试吗
|
架构师 测试技术 程序员
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
|
存储 SQL XML
好用!期待已久的文本块功能究竟如何在 Java 13 中发挥作用?
这可能是很多朋友目前的真实情况。说实话,Java “每半年发布一个新版本”的节奏确实快了点。但不管怎样,新技术、新特性还是值得我们学一学。
244 0
好用!期待已久的文本块功能究竟如何在 Java 13 中发挥作用?
|
存储 C语言
【C语言】升级版猜数字小游戏(含简单、中等、困难模式并且支持战绩查询以及界面美化)
【C语言】升级版猜数字小游戏(含简单、中等、困难模式并且支持战绩查询以及界面美化)
264 0
【C语言】升级版猜数字小游戏(含简单、中等、困难模式并且支持战绩查询以及界面美化)