我开始在代码中使用中文变量名了

7 月 9 日
 chunqiuyiyu

有句名言说,计算机科学中只有两件难事:缓存失效和命名。

最近在开发一个文字游戏,有关汉字的描述特别多。如何在代码中为相关的变量起一个贴切、适合的名字简直要了老命。直接用汉语描述翻译成英文,不但很长,而且我也没有精力时间去判断生成的英文到底对不对,特别是是一些成语和俗语等根本没法翻译。

如果用拼音,问题更多了。用全称名字也很长,而且同音字这么多,一眼看到还得想到底是啥意思。用拼音简称那就加灾难了( nbnhhsh 能不能好好说话)。

最后,我终于决定使用中文变量名。一用才知道,真香!描述概念很贴切,真正做到了见名知意,写起代码来行云流水,连注释都不需要。

2025 年了,HTML5 以及很多编程语言对 Unicode 的支持已经相当完善,中文的变量名称一点儿都不会有问题。借助 AI 与编辑器,补全与跳转更是不在话下。

说到这里,诸位计算机大神要来喷我了,我试着反驳一下,如果你坚持,那就是你对。

问:用中文频繁切换输入法会让写代码更慢?

答:不会。首先我用系统自带输入法,用 shift 一键就能切换,按照代码规范,英文命名还要驼峰大小写。最关键是我不需想变量描述的英文表达,中文简单明了,实际上会更快。再说了,又不是打字员,快有啥用啊?

问:用中文导致编码问题?

答:代码经过打包工具转译后会成为 abcd 等字符,不会对运行造成影响。

问:协作问题?

答:这是个私人项目,不存在与他人协作,更不会和外国人协作。

问:用中文太低端了,英文名称更加上档次?

答:去看看脑子,用蹩脚和充满语法错误的英文才能让你获得自信,病得不轻。

就这些了,希望对大家有所启发。

10261 次点击
所在节点    编程
103 条回复
tf2
7 月 9 日
早就这么干了。产品喜欢创造发明,以前写代码老实翻译,后来悟道了

翻译个屁。你原型画什么我 enum 就写什么数据库就存什么

有变化?谁变谁背锅。
nicaiwss
7 月 9 日
挣钱不?海外市场不要了?
chunqiuyiyu
7 月 9 日
@tf2 是这样的,不要在一些无关紧要的地方浪费时间精力。
luojianxhlxt
7 月 9 日
@nicaiwss #2 中文代码不影响 i18n 的实现
chunqiuyiyu
7 月 9 日
@nicaiwss 代码又不会让人看到……
soouu
7 月 9 日
@nicaiwss 很难怀疑是不是反串
unused
7 月 9 日
痛点是输入太慢,主要卡在重码选字上。以后用 AI/语音输入无所谓了
chunqiuyiyu
7 月 9 日
@unused 现在都是 AI 在写了,我只看代码
catning
7 月 9 日
chunqiuyiyu
7 月 9 日
@catning 看到 emoji 我就难受🤣
gpt5
7 月 9 日
我记得这是 v 站大忌 会被 v 友鄙视
starrys
7 月 9 日
楼主这种情况,个人项目、需要翻译很多名词为英文,确实用汉语是个好办法。
starrys
7 月 9 日
但是不具有普适性。
kuku123
7 月 9 日
快进到汉语一统天下
PrinceofInj
7 月 9 日
小企鹅输入法当年仅仅因为使用中文配置,就被一些高手骂得停止开发,现在真是不可同日而语了。
chunqiuyiyu
7 月 9 日
@gpt5 无所谓了,我经常分享写的东西,被骂习惯了,以前还和人对喷,现在看到后一笑而过。
chunqiuyiyu
7 月 9 日
@starrys 对,选择自己适合的。
chunqiuyiyu
7 月 9 日
@kuku123 别这样,我害怕。
chunqiuyiyu
7 月 9 日
@PrinceofInj 唉,人心中的偏见是一座大山。
Fallever
7 月 9 日
上次遇到中文变量名用 gbk 保存的, 导入到工程里 vscode 打开直接编译报错 🤣

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

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

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

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

© 2021 V2EX