[中文编程知乎专栏] 对在代码中使用中文命名的质疑与回应

2018-12-17 16:03:21 +08:00
 xuanwu

对在代码中使用中文命名的质疑与回应 小标题如下. 欢迎查缺补漏.

没有好处

不利于非中文编程者贡献

芬兰人 Linus,使用英语而非自己的母语来编写 Linux 代码

附上中文注释就够了

绝大多数 API, 包括标准库都是英文的

如果关键词还是英文, 用中文命名就没有意义

编程语言本身和英文语法无关

中文输入太慢, 降低开发效率

会有各种汉字编码问题导致乱码

看多了中文程序会影响英文学习,以及程序员前程

中英混用的问题

没有先例

中文比英文更难以理解

"我们在用 C++,Java,Python 编程,不是在用英文编程"

3561 次点击
所在节点    编程
10 条回复
ShineSmile
2018-12-17 17:35:06 +08:00
又不是不能用
虽然我不用

```
编程语言本身和英文语法无关
```
这句我觉得存疑 其他的没细看
whileFalse
2018-12-17 19:54:31 +08:00
其实我觉得中文编程作为对英文不好的人普及编程来说是非常合适的。

只有两个问题:
1. 牛逼的程序员大概不太希望到使用中文编程的公司工作
2. 牛逼的公司大概不想使用中文进行编程
CallMeReznov
2018-12-17 19:56:43 +08:00
E 语言牛皮!(破音!
wdv2ly
2018-12-17 22:27:26 +08:00
这帖子意义是什么?
xuanwu
2018-12-18 01:35:16 +08:00
@wdv2ly 问的好. 见"在代码中推广中文命名对中国开源软件的意义": https://www.v2ex.com/t/518452

@ShineSmile 这里的小标题都是对中文命名质疑的理由, 文中有对每一条的分析和回应.

@whileFalse 无论英文有多好, 处理专业术语时始终有母语优势, 见 https://www.v2ex.com/t/477109#r_5991605
你说的两个问题都会随着中文命名的逐渐普及而转变
Remember
2018-12-18 01:40:26 +08:00
v2ex 居然还有讨论中文编程的帖子?
sagaxu
2018-12-18 01:52:02 +08:00
@xuanwu 逐渐普及?不存在的。java 从二十几年前就支持 unicode 变量名了,除了举例从未见过有人这么用。现在的社会英文水平,比二十几年前高太多了,更加没有动力汉化变量名。

国内几个有影响力的开源项目,都额外提供英文文档和英文官网了。别人在国际化,在走出去,代码汉化是怕外国人窃取机密么?
xuanwu
2018-12-18 02:09:22 +08:00
@sagaxu
> 除了举例从未见过有人这么用

应该是你不知道而已. 国外也有大公司(西门子(德)/爱立信(瑞典))内项目用非英语的母语命名, 见文首链接的"没有先例"一节. 国内的见我另一个"你们在怎样的项目中使用过中文命名"的回帖.

> 现在的社会英文水平,比二十几年前高太多了,更加没有动力汉化变量名。

中文水平超过英文水平的仍占绝大多数. 母语命名在代码可读性上的优势仍然明显.

> 别人在国际化,在走出去,代码汉化是怕外国人窃取机密么?

使用中文命名首先是为了方便自身维护和扩大参与度. 你既然是从我那个"在代码中推广中文命名对中国开源软件的意义"帖子过来的就应该看到了这点.
xuanwu
2018-12-18 02:12:09 +08:00
@Remember 我发的帖子都是关于中文编程的, 有兴趣可以看看.
@CallMeReznov 中文编程不仅是中文编程语言. 此贴针对的是在现有的英文语法的编程语言中用中文命名
bestkayle
2018-12-18 08:44:26 +08:00
自己的项目无所谓,而且用几个 if for 并不能提高英语水平,目前合作过的程序员英语都很差,口语更差

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/518311

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX