1
learningman 2020-03-26 23:27:46 +08:00
中文变量名主要是你写程序的时候得狂切输入法
什么时候编译器接全角符号了说不定可以试试 |
2
classyk 2020-03-26 23:40:53 +08:00 via iPhone 13
比糟糕英文命名好很多很多
|
3
si 2020-03-26 23:54:34 +08:00 14
为什么经常看到有人说切换中英文和符号要狂切换输入法呢,我一直以为都是按 shift 切换中英文的。
|
4
HENQIGUAI 2020-03-26 23:55:09 +08:00
一些专业名词或者业务约定的乱气八糟的词,key 或变量直接用中文很好使,就是自动补全难了点。
|
5
strawberryBug 2020-03-26 23:55:20 +08:00
代码命名还是要统一哈,要用中文干脆全用好了
|
6
strawberryBug 2020-03-26 23:56:24 +08:00
@si 有时候符号全半角调不过来很影响心情
|
10
seeker 2020-03-27 00:02:25 +08:00
hukou
|
11
xuanwu 2020-03-27 00:06:26 +08:00 1
@strawberryBug ”要用中文干脆全用好了“——并不是不可以,但完全可以从性价比最高的业务相关部分开始用中文命名。
|
12
pomelotea2009 2020-03-27 00:07:06 +08:00 via Android 1
@chendy 同,我的 Ctrl+Space 切换中英文都成了条件反射,所以安装输入法之后第一件事就是取消 Shift 切换中英文
|
13
xuanwu 2020-03-27 00:09:14 +08:00
@HENQIGUAI "就是自动补全难了点"——多数 IDE 支持中文变量自动补全。
如果是说要输入一个中文字符才能出备选单,见过两种改进方案:1 )用英文字母作前缀; 2 )自己用插件或修改 IDE 实现拼音输入自动补全,效果如下: https://github.com/program-in-chinese/overview/issues/11#issuecomment-320431936 |
14
wangyzj 2020-03-27 00:17:23 +08:00
比如 win 代码到 mac 下乱了之类的
|
15
xiangyuecn 2020-03-27 00:18:42 +08:00 4
有些业务还不得不用中文来命名,不然写出来的代码绝对会成屎山。这段时间给座屎山添加了个公众号推送消息,几十个模板,字段数量、名称五花八门的,不写中文实在无能为力🤔
配套的写了一个代码生成器 中文编程感觉良好 |
16
baobao1270 2020-03-27 00:20:07 +08:00
我觉得完全是因为字体和配色的原因……
|
17
cmdOptionKana 2020-03-27 00:22:17 +08:00 2
@wangyzj utf-8 成为事实标准很多年了。
|
18
jinliming2 2020-03-27 01:27:19 +08:00 via iPhone 1
我觉得不爽的点是同音字问题,需要配合输入法,补全就很难受了。
比如要打一个词,要么用输入法打完(有词库还稍微好一些),要么输入一两个字,然后 IDE 补全,但是输入一个字是比较痛苦的,特别是常用的多音字比较多的时候…… 至今没有一个体验能比得过易语言那个 IDE 的中文编辑器,自动调整全角半角符号、输入首字母自动补全,这些功能我觉得是使用中文编程最基本的体验了…… |
19
HangoX 2020-03-27 01:31:14 +08:00 2
我在 enum 上使用中文非常爽。。因为有些东西英语太复杂了,中文真的就两个字
|
20
xuanwu 2020-03-27 01:35:10 +08:00
@jinliming2 很多情况下,输入的不便相对于阅读时(尤其别人写的代码)的不便来说,是相对小的多的。
|
21
lc7029 2020-03-27 03:31:17 +08:00
没问题,既然支持,为什么不用?
|
22
hundan 2020-03-27 03:59:05 +08:00 via iPhone
可以 但没必要
习惯英文命名了 包括写英文注释 和英文文档说明 现在的情况是 看中文命名会稍微显得吃力 如果用中文命名 一个是中英交叉 看着混乱 也有一些对大多项目可能无关紧要的问题 就是不够国际化 中文命名的唯一好处就是让英语不好的同学降低了学习成本 但归根结底 到最后你还是要用英文的 试想一个 github 项目全都是中文 别人想给你提 pr 发现自己不懂中文 ? 试想你要阅读某著名项目代码 发现全是英文注释和命名 到处找翻译? 试想参与一个优秀开源项目,用中文命名写了一堆东西 因为命名不规范被否决了? 如何保证命名规范? 没有驼峰 那如果要做规范是不是只能做下划线了还是直接不做了? let job in jobs 两个 job 如何翻译?当然这都是小问题 只是带来了优雅性的问题 但优雅性本身和效率相关 如果要提升自己 中文命名只是一时的选择 但不是最终选择 如果只是写写小工具小项目 倒无所谓 用按键精灵 e4a 之类的也可以 也不存在鄙视链的问题 目的不同 适合就好 |
23
shiji 2020-03-27 06:55:49 +08:00 via iPhone 3
已经条件反射了
看到中文编程就滑到下面找有没有 xuanwu 的评论 |
24
dorentus 2020-03-27 08:35:11 +08:00 via iPhone
说切输入法麻烦的平时不写中文注释吗🤔
|
25
leeeeee 2020-03-27 08:39:10 +08:00 1
@learningman google 拼音可以设置输入中文时用英文标点。
|
26
xuanwu 2020-03-27 08:42:24 +08:00
@leeeeee ”google 拼音可以设置输入中文时用英文标点“——搜狗也可以,而且可以设置某些 app 有效(比如 IDE )
|
27
liuky 2020-03-27 08:44:55 +08:00 1
@learningman 中文输入法可以使英文符号的, 搜狗, 微软自带输入法 都可以设置
|
28
codeloster 2020-03-27 08:48:13 +08:00 1
办公类的,枚举都用中文,起码一眼就懂。
|
29
xsen 2020-03-27 09:05:42 +08:00 1
若可以关键字拉黑的话,中文相关(包括编程、变量名)全部拉黑
以后面人需要加多一条,对中文编程(包括中文变量名)怎么看?没明确反对的,直接不考虑 我就是不明白,难道楼上的各位连基本的英文都没入门么?还是都是初高中毕业,培训出身的 |
30
murmur 2020-03-27 09:10:05 +08:00 3
我们谈业务你们谈 github 谁家的业务代码会往 github 上挂
|
31
yhxx 2020-03-27 09:13:32 +08:00
说切输入法的,你们代码里一点中文都没有吗?
比如 alert('网络异常'),这种东西不切输入法吗? |
32
murmur 2020-03-27 09:16:06 +08:00 10
是不是有些人互联网呆久了不知道还有行业软件一说
是不是有人四六级过了以为英语好了,忘了隔行如隔山一说 是不是有人不知道很多行业中国处于领先,是我们制定标准给别人 强制推广中文编程不可取,但是在特定行业软件开发,中文变量名和中文数据库设计可行 我就不说别的,举个例子,拿到医院的检查单给我看中文版带标记我会有自己是医生的错觉,你把上面东西全翻译成英文我当场会吐血 |
33
raymanr 2020-03-27 09:17:21 +08:00
win 10 自带的输入法有一个选项: 中文时输入英文标点.
|
34
beimenjun 2020-03-27 09:18:53 +08:00
多数中文字体和编程英文字体放在一起其实排版挺糟糕的。不接受的原因就是这样。
|
35
hirasawayui 2020-03-27 09:19:48 +08:00 via Android 1
说切换输入法麻烦的,平时不群里摸鱼吗?
|
36
drydiy 2020-03-27 09:23:27 +08:00 2
@xsen #29 纯扯淡。
有些行业是有大量专有名词的,你英文有多好能准确表达?更别说对于中国处于前列的某些行业,这类软件开发你怎么用英文?乱用不准确的英文真就不如中文来的易于维护。 综合来说,就是实际业务情况实际分析。一刀切非常不可取。 |
37
Chry3anthemum 2020-03-27 09:23:54 +08:00
@murmur #32 原文:“是不是有些人互联网呆久了不知道还有行业软件一说是不是有人四六级过了以为英语好了,忘了隔行如隔山一说是不是有人不知道很多行业中国处于领先,是我们制定标准给别人强制推广中文编程不可取,但是在特定行业软件开发,中文变量名和中文数据库设计可行我就不说别的,举个例子,拿到医院的检查单给我看中文版带标记我会有自己是医生的错觉,你把上面东西全翻译成英文我当场会吐血”
====== 回复:这让我想起了 murmur 学长当年指导我写 C 井上位机软件的时候(害羞 |
38
SakuraOjosama 2020-03-27 09:23:54 +08:00
总比搞个拼音不带音标强
|
39
tom 2020-03-27 09:24:03 +08:00 1
@yhxx #31 我总是有个错觉,这里的人好像写代码连注释都是英文,就因为切输入法麻烦。关了 V2EX 吃喝犯愁,打开 V2EX 业内精英
|
40
xsen 2020-03-27 09:27:00 +08:00
@drydiy #36
1. 那麻烦告诉我,有哪些行业是中国特有的?就是说除了中国国外就没有的 本人孤陋寡闻,确实不知道 2. 对于前列的行业 也麻烦告诉我,哪些前列的行业,是没有对应的专业术语(英文或各国语言的)?看来你连专业英语(外语)都不知道,确实没上过大学 3. 英文不准确?连翻译软件都不会用么?看来是很大可能 还说中文易于维护?你确定不是在挖坑么,国内就是取巧的人多——看似聪明 |
41
Wuuuu 2020-03-27 09:28:15 +08:00 1
最好企业能出个特殊变量名统一性指南。否则有些词真的是,每个人明明都不同
|
43
Guys 2020-03-27 09:28:46 +08:00
你们没设置过 win10 自带的输入法吗?可以设置输入中文时采用英文符号的,就譬如我这行话...,,,,;;;;
|
44
xsen 2020-03-27 09:30:55 +08:00
有个事情想想就好玩,
中文编程 /变量,日文编程 /变量,德语法语编程加变量。因为每个国家都有自己领先的,特有的。。不就是这个意思么 其实干脆直接闭关锁国得了 |
45
goodboy95 2020-03-27 09:39:59 +08:00 1
@xsen 众所周知,写代码只要费劲能读懂就够了,至于易不易读,管他呢。
我们系统开始由两个人开发,里面涉及了试用员工处理的功能,一个人认为试用的英文是 probation,另一个人认为是 trial,结果真就这么开发下去了。初期 codereview 也看不出问题,后期发现了也只能认了,顶多就是后续的代码统一翻译。 当然大部分代码规避不了这个问题,但 enum 或者某些极易误解的变量用一下中文降低误解概率,众所周知也是大逆不道的,是连基本英文都没学过的。 顺便问一下,你在哪个公司招人?我最近在找工作,正好避一下坑。 |
46
echoway 2020-03-27 09:41:04 +08:00
这种变量如何进行英文命名呢? 各位给个方案
|
47
echoway 2020-03-27 09:42:19 +08:00 7
|
49
murmur 2020-03-27 09:48:14 +08:00 2
|
50
goodboy95 2020-03-27 09:53:07 +08:00 1
@echoway 我一般都逐词强翻,打造有中国特色的变量名。
比如说: 个人当年账户支付数:personalCurrentYearAccountPayment 医疗费用自费应付总额:medicalFeeForPersonalTotalPayable 医疗费用自付应付总额:medicalFeePayByPersonalTotalPayable 我知道这么干很蛋疼,但有时候还真就会这么干…… |
51
virtual2019 2020-03-27 09:55:50 +08:00
@xsen #29 不说你完全没接触过的行业,你要是能把那些常见软件比如 excel 、photoshop 的中文版所有菜单和设置项一词不差的翻译回英文,我就承认你不是初高中毕业,培训出身。
|
52
star7th 2020-03-27 10:00:15 +08:00
从没用中文名,一般都会用其英文。不懂单词可以网上翻译一下。实在不行写拼音也凑合。中文名可以回埋坑引发未知问题
|
53
hbolive 2020-03-27 10:01:19 +08:00 1
@goodboy95 用中文也好,英文也罢,其实只要统一都没问题。关键很多时候,某些系统是多人开发的(或者经过很多人的手),这变量也是五花八门啊,比如推荐:有人用 recommend,有人用 tj,还有优缺点:yqd,嗯,就是这个味道。。
|
55
xsen 2020-03-27 10:06:14 +08:00
@virtual2019 #50
看来你不知道 excel 、photoshop 有英文版呀。还是你以为这两个软件都是国内,用中文开发的 |
56
virtual2019 2020-03-27 10:24:43 +08:00 via iPhone 1
@xsen 它们有英文版能说明你的英文水平不是培训班出身么
|
57
ncwtf 2020-03-27 10:25:29 +08:00
@xsen #55 首先声明,我也不支持变量名用中文。
但是不懂就要问,我想请教一下 ”财政拨款收入支出(分级)“这个变量要怎么翻译? |
58
azkaban 2020-03-27 10:27:44 +08:00
@learningman 我输入法设置默认半角,只有写邮件快捷键调一下
|
59
ncwtf 2020-03-27 10:29:02 +08:00
为什么英文不好翻译就要中文?
# 老铁 var old_iron = "" 给个注释不行吗,你以为你们的代码都是千古流传的? |
60
bertonzh 2020-03-27 10:30:32 +08:00 2
你们怎么能用中文命名呢?还有用中文写注释、用中文写接口文档、用中文写 PRD 的,你们都是培训班出身吗,连英文都不会?
你们有没有考虑过几年你们团队发展成跨国大团队,你们的英美同事怎么和你合作,接手或者 Review 你的代码? 你们有没有考虑有一天你们的业务系统成为世界顶尖标准,想开源代码的时候,中文代码怎么拿得出手? |
62
murmur 2020-03-27 10:32:31 +08:00 2
@ncwtf 集团的 OA 还是用 vb 写的,现在依然跑的好好的,当然就千古流传,不像有些“互联网”公司做出个东西半年公司都没了自然就不需要维护
|
63
hundan 2020-03-27 10:37:33 +08:00 1
@murmur 全文就我提了 github,你的“你们”是哪来的?你直接艾特我很难吗?还是你只是想表达观点不想讨论?
先不说我没完全否定中文编程,特殊情况特殊对待,选择合适方案 其次这篇讨论什么时候限定为业务代码了? 再次,你可能没见过开源的业务代码? |
64
cmdOptionKana 2020-03-27 10:55:22 +08:00 4
@ncwtf 你这样做(中式英文加注释),比用中文变量好在哪里?
|
65
0x11901 2020-03-27 10:59:51 +08:00 2
说真的有些人直接否定中文变量命名非常偏激,就像永远不要使用 goto 语句,宏的名字一定要大写蛇形命名法一样。反正知道一个结论就避之大吉……
总之我感觉就像那种在路口看见红绿灯就一定要等到绿灯才过去,虽说道路上是不是几公里都没有一辆机动车。反正我是不等红绿灯直接过的人。 |
66
FaiChou OP @hundan #63
我只贴一张图片,没有注明是业务逻辑代码,这是前同事交接给我的一个 3D 模型项目,在看代码时候发现中文命名第一眼有点奇怪,但第二眼就觉得很合理。如果一开始我写一堆又长又难识别的英文命名,可能在这里加一行注释有点效果,但在其他地方使用过程中,理解起来就困难了,如果在每处都加注释,工作量会增加。总之,在这情况下,我赞成中文变量命名。 |
68
Youngxj 2020-03-27 11:20:13 +08:00 2
规定是死的,人是活的,变通一下也是不错的,至少你不用为了一个变量单独去写一行注释,就是让人能够理解这个代码的意思和实现代码的功能,我觉得中文变量是可取的
|
69
ncwtf 2020-03-27 11:20:15 +08:00
@cmdOptionKana 那中文变量又好在哪呢?代码规范很重要不是么。
|
70
Vibra 2020-03-27 11:22:22 +08:00 3
话说你们为什么不直接用全半角,,我在中文输入法下, 我也是用半角的...这样打代码不爽吗 ?
|
72
wozhihuipinyin 2020-03-27 11:33:25 +08:00 via Android
@goodboy95 前面有哥们觉得中文变量名太长!我觉得你这也够长的!
|
74
goodboy95 2020-03-27 11:35:44 +08:00
@wozhihuipinyin 我也不是中文变量的坚定反对者啊,奈何有的时候不写成英文过不了 code review
|
76
wozhihuipinyin 2020-03-27 11:39:07 +08:00 via Android
@goodboy95 这个理由比前面那些歪屁股的理由强太多了!!!!😄
|
78
jmc891205 2020-03-27 11:41:33 +08:00 via iPhone
「动态材质的」可以省略或者抽象成数据结构
「名称」可以省略 剩下的翻成英文也还可以接受 |
79
gromit1337 2020-03-27 11:45:21 +08:00
@leeeeee #25 微软的都可以,快捷键 ctrl + .
|
80
jswh 2020-03-27 11:48:57 +08:00
前面加个英文前缀,用补全选择就可以不用切输入发啦
|
81
learnshare 2020-03-27 11:50:03 +08:00
可以但不推荐
|
82
Mithril 2020-03-27 11:53:52 +08:00 1
没办法保证同事英文水平的情况下,直接使用中文是有必要的。不然同一个东西可以给你弄出好几种写法,最后调都调不回来。
|
83
charlie21 2020-03-27 12:00:36 +08:00 1
一些人是无法遇到用中文的场景而已,中文对他们而言不是一个选项,亦是连 “拒绝此选项 (拒绝用中文)” 的资格都没有
当有了此选项时,你才可以选择接受此选项 or 拒绝此选项。当没有此选项时,你怎么可能拒绝此选项呢? 当你没有此选项时,如果你又说拒绝此选项,就像 没有被提供葡萄的选项 就说葡萄是酸的。很酸 |
85
SummerWQM 2020-03-27 12:18:47 +08:00
要用三个字节来存 你的每个中文 不晓得哪里好 就为了 好读吗 !
|
86
xuanwu 2020-03-27 12:31:23 +08:00
@SummerWQM "要用三个字节来存 你的每个中文 不晓得哪里好 就为了 好读吗 !"
—— no, I just want to fill up my hard disk faster with my source code files! lol Seriously, are you really a programmer? |
87
zapper 2020-03-27 12:35:58 +08:00
如果一个库用的 utf8,你自己写的是 gb2312,那不乱套了……
|
88
starcraft 2020-03-27 12:49:16 +08:00
说白了不就是没那个英文水平翻译过去嘛。用中文不是不可以,无脑用一样会出大问题。
|
89
oovveeaarr 2020-03-27 12:49:42 +08:00 1
@xuanwu #86
no, I just want to fill up my hard disk faster with my source code files! lol Seriously, are you really a programmer? That’s 117 characters, totaling 117 byte 不,我只是想用我的源码更快地填满我的硬盘!笑 说真的,你真的是程序员吗? That’s 36 characters, totaling 100 bytes PS:建议加钱买块大硬盘,10T 也才 1000 多,够连续写中文代码很久了 |
90
llsquaer 2020-03-27 12:57:32 +08:00
挺激烈啊....国内很多 GitHub 开源代码的文档说明都是用英文的.半天找不到中文,有些就没有中文....
而且有些就是个人项目..可能就是想锻炼下英语水平吧.. |
91
jsjgjbzhang 2020-03-27 13:45:53 +08:00
拼音啊 搞不懂 拼音多方便
|
93
vxyun 2020-03-27 14:26:34 +08:00
求问,这个是什么字体
|
94
Dvel 2020-03-27 14:28:10 +08:00
可以在前面加个字母,比如“v 动态材质的 xxx”,省的每次都要复制粘贴了
|
97
shmily000u 2020-03-27 14:46:20 +08:00
@echoway 呃呃呃 每当遇到这些社保 医保相关的词语 真的是无能为力
|
98
realpg 2020-03-27 14:46:21 +08:00 2
医保系统,某一种药品的特殊标志位字段为:
[非医保用药(丙类),特殊情况时为甲类] 这个标志位的英语字段名怎么命名 还有 [二线用药] 字段怎么设计能换个人哪怕换个不懂行的人都能理解 |
99
fancy111 2020-03-27 14:48:21 +08:00
吵啥炒啊,强迫你们写了吗?
|