中文变量名 用与不用?
我有个同学,他的逻辑思维也不错,不过就是程序设计他怎么学也学不好,开始我也不知道原因。后来有一次,他说他的代码有点问题,叫我帮他调一下,当然,热心的我毫不犹豫的就过去了。过去接过他的代码,一看吓一跳!!根本看不明白...原因是他英文不好,那些变量名、方法名他都是糊乱敲几个字母,根本没有任何意义。但很快,我冷静下来,毕竟我也是班里传说中的高手,怎么能倒在这些小问题上。我开始问他变量的意思,用法。全问了一次后又开始看了一会,还是很晕!!代码太多了。这时他脸上开始露出了怀疑的表情。我一世英名,怎么可以毁在这里!一气之下我把他的变量方法名全部改成了中文,改了之后,思路开始清晰,便跟他讲解一下,结果是我一说他就明白了...我又吓一跳!要知道以前一个问题跟他说N次他才明白一点点的,这次怎么...最后问一下原因,才明白原来是因为我用了中文的变量名。
按照传统的习惯,中文变量名和方法名是不允许出现的,但自那次以后我开始对中文字段名不可用的观点有点动摇了。中文,为什么不用,对于我们中国人来说,用中文不是更易于维护和理解吗?
下面,请你们来说一下,用不用中文,用的原因是什么,不用又是因为什么。你们是否也试过用中文,还有,支持用中文的,请吼一下,我想知道一下,支持用中文的到底有多少。
本贴不欢迎接分及顶的,接分和顶的一律不给分
问题点数:100、回复次数:60Top
1 楼iversonkai(玉凯的困惑)回复于 2006-03-30 10:38:39 得分 5
严重支持中文!国人么!
希望有天能用上国产的开发环境!
大家一起努力吧!Top
2 楼viena(维也纳N02)回复于 2006-03-30 10:40:17 得分 5
支持,虽然我自己不用~Top
3 楼silverpot(银斑蝶)回复于 2006-03-30 10:41:15 得分 1
做为软件开发者,用中文和英文有啥区别么?!
想做好软件开发,E文不好能行么,即便是行,能有多大的提高空间还值得人怀疑!Top
4 楼viena(维也纳N02)回复于 2006-03-30 10:41:42 得分 5
什么时候程序语言的语句都改成中文就好了Top
5 楼songxiaozhao(雨朋)回复于 2006-03-30 10:42:47 得分 2
行了,能不用还是不要用,你的同学再怎么差劲,我想还是他练习的少
俗话说的好:熟能生巧,没准他以后也很强呢
----------------------
呵呵,没别的意思,就是权衡一下好懂和容易出现乱码要付出的代价,还是不要用的好Top
6 楼soaringbird()回复于 2006-03-30 10:42:54 得分 1
用中文变量名就是输入起来不方便,即使有代码提示Top
7 楼ice_frank(回归......)回复于 2006-03-30 10:43:55 得分 1
强烈建议不要用中文。
原因:1、目前的编程语言本来就全部是英文的,如果用中文显得格格不入,假如是大点的公司,有老外程序员,这如何交流?除非发明中国人自己的编程语言。
2、中文可能产生潜在的编码转换问题。Top
8 楼iversonkai(玉凯的困惑)回复于 2006-03-30 10:49:47 得分 1
还是本国,国力也发展不行,如果早早在此领域称雄,
老外不一样用全中文的开发语言,不要觉得开发语言都是用英语就认为他就应该是英语的!
是吧Top
9 楼lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))回复于 2006-03-30 10:50:02 得分 5
如果你做的东西只在国内
你用什么都无所谓
但是如果真有一天到国外
那不就傻X了
另外如果你是公司的一把
你可以要求都用中文
可是你不是
那么你就必须听上头的
每个公司都有自己的一套编码规则
个人认为
作为初级程序员最重要的就是养成一个良好的编码风格
最起码自己写出来的东西
能让同事看着舒服
我曾经在一个项目中
数据库的字段都是中文Top
10 楼dhcs(dh)回复于 2006-03-30 10:57:00 得分 5
如果系统支持中文变量名,用中文也未尝不可,或者中英混用也可以,
我也用过中文变量名的,一目了然,只是输入法切换很频繁,
不论中文 E文,建议用统一、规范的规则起变量名,同时加以注释(对以后的维护、理清思路很重要)。Top
11 楼Tycool(Xuco)回复于 2006-03-30 11:19:51 得分 1
中文怎么支持?若用Unicode码,很多编辑器和编译器都有问题的。
顶多支持你的中文拼音式变量名。
另外,太多太多的国外资料需要我们去学习,英语是通用的开门工具阿,不要纵容英语很差的同学!!!
我在项目中看到法国人/德国人的代码时,看到注释就头疼,根本没法看懂的。
楼上iversonkai“老外不一样用全中文的开发语言”什么语言?愿意听听这方面的事情。Top
12 楼mydreamf(小枫)回复于 2006-03-30 11:40:45 得分 5
现在很多大型软件 不是已经完全支持中文了吗? 中文对于我们国人来说 维护性上无可厚非的最好的Top
13 楼linglv(子曾经曰过......)回复于 2006-03-30 11:43:34 得分 1
目前的很多语言和开发环境都不支持中文变量,而且中文变量在开发程序的时候会出现很多问题,我建议楼主用拼音缩写来命名变量,这样既不会出问题,中国人也容易看懂Top
14 楼qruntime(Allen)回复于 2006-03-30 11:50:50 得分 2
呵呵, 开发软件.对国人来说.界面肯定要中文, 但在设计内部的变量.千要不要中文, 千要不要用Top
15 楼shalen520(Love will keep us alive)回复于 2006-03-30 11:51:09 得分 2
编码问题会很造成很大的麻烦Top
16 楼moguiziziwenlong(C#学习中,各位帮忙帮忙帮帮忙~~ >_<)回复于 2006-03-30 11:59:24 得分 5
那个习惯用那个
如果跟老外一起的话~ 那就免了中文吧
如果就在国内的话~~
我操 SB 不用中文干吗???
支持国货~~~ 不过.net 就是老外的... - -!!Top
17 楼hy98521(斯达克)回复于 2006-03-30 12:37:30 得分 2
在程序员里用拼音的也不少。 中文还是支持的不好。 要是国产就好了。Top
18 楼moodboy1982(老鹰)回复于 2006-03-30 13:41:30 得分 2
要考虑兼容性呀。
我也想用中文,但从来没用中文。Top
19 楼henry3695(henry(老师说学好正则可以赚美元的))回复于 2006-03-30 13:59:14 得分 1
电脑识别 英文变量 比 识别中文变量 轻松Top
20 楼wengnet(西门吹雪)回复于 2006-03-30 14:12:16 得分 1
没有考虑过这个问题,不过一般还是不用中文变量名的,恐怕公司也不允许吧~!Top
21 楼TTLOVEYOU3344(笨笨)回复于 2006-03-30 14:20:50 得分 1
没有考虑过这个问题,我待了四家公司,从来没听说用中文去命名变量Top
22 楼GCY516(GCY516)回复于 2006-03-30 14:40:10 得分 1
不用~Top
23 楼flytigerboy(天涯浪人)回复于 2006-03-30 14:44:40 得分 1
还是不要用中文变量,容易导致编码问题。
实在不行用拼音也可以嘛!Top
24 楼arice1983(一粒米)回复于 2006-03-30 14:46:53 得分 3
只在中国用的话没问题,就用中文Top
25 楼Ivony(授人以鱼不如授人以渔,上海谋生)回复于 2006-03-30 14:53:23 得分 10
英文不好就去学呗,没有一点儿英文基础又怎么做Programer?很多资料都是英文的,别人写的程序和控件、Windows API不可能给你用中文来写吧,不懂英文又怎么写程序呢?
还有拼音,拼音是最最最最不可取的,猜拼音简直就是对程序员最大的摧残,用英文实在看不懂翻翻词霸还能明白个大概……要全部用拼音,我第一件事就是把这个项目的代码扔掉重写。
拼音是最最不可取的。Top
26 楼xalingxuan(lx)回复于 2006-03-30 15:29:40 得分 0
强烈建议用中文,dotnet, sqlserver, 内部都Unicode编码.
没问题,我们公司一直用着,没发现什么问题。Top
27 楼cquazhi(阿志)回复于 2006-03-30 17:07:04 得分 3
xalingxuan(lx) ,你们的尝试很有意义。不过如果涉及到交流、开放的话,中文肯定不可取。而且程序员必须要有英文做基础,否则外文的一手资料你根本没办法学习,只有等某些所谓的“专家”翻译给你了...Top
28 楼xxuu503(中国没有prison break只是因为the company不让拍)回复于 2006-03-30 17:25:17 得分 5
Ivony() ( ) 信誉:100 2006-03-30 14:53:00 得分: 0
英文不好就去学呗,没有一点儿英文基础又怎么做Programer?很多资料都是英文的,别人写的程序和控件、Windows API不可能给你用中文来写吧,不懂英文又怎么写程序呢?
还有拼音,拼音是最最最最不可取的,猜拼音简直就是对程序员最大的摧残,用英文实在看不懂翻翻词霸还能明白个大概……要全部用拼音,我第一件事就是把这个项目的代码扔掉重写。
拼音是最最不可取的。
en哪
有同感
汉语拼音简直太伟大了Top
29 楼xxuu503(中国没有prison break只是因为the company不让拍)回复于 2006-03-30 17:26:35 得分 3
欧是说,因为伟大,所以复杂,所以..........Top
30 楼dinons(雨辰)回复于 2006-03-30 17:31:19 得分 5
中国人吗,当然是习惯于用中文了。但在用于变量名的时候用中文的准确性是不是存在一定的问题。不过希望有一天出一编程工具要求变量名必须为中文的。哈哈Top
31 楼hyena041(陷入自己的思维中,找不到自己了)回复于 2006-03-30 17:32:09 得分 1
前两天有个帖子在讨论这个问题了
仁者智者,各不相同Top
32 楼langmafeng(乞力马扎罗)回复于 2006-03-30 17:36:55 得分 1
不用Top
33 楼AgainWarning()回复于 2006-03-30 17:44:37 得分 1
哎。没办法。但我个人绝对不会支持中文名做的。
就从编译的角度,从中文所占字节数来看,都不会比英文好呀!Top
34 楼Kshatriya(何以解忧,惟有杜康)回复于 2006-03-30 18:16:52 得分 1
絕對不支持,單從需求上說,就不能滿足軟件開發的需要,英文至少目前在全球都是可以通用的,抛開用戶不說,單説程序運行,你用中文字段,到英文系統可能出現問題,到繁體系統,肯定出問題.其他系統更不用説了.
再者,面向國内的用戶還可以,但是其他用戶呢?Top
35 楼qghboy(飞雨)回复于 2006-03-30 18:59:01 得分 1
可以中英文参着用,比如说表名和字段名前面加一个字母后面用中文,例如:
学生表: s学生表;
学生姓名:s姓名;
学生年龄:s年龄;
这样用"."符号引用的时候就比较方便.例如:s学生表.s姓名="aaaaaa";
哈哈:)大家不要见笑,谁叫你英文不好呢!但英文不好的人也总不能饿死吧!
个人自有个人办法!微软对中文支持也算不错,另外把utf-8 改为gh2312,这样对中文支持要好一点
Top
36 楼ssddkkee()回复于 2006-03-30 19:49:03 得分 5
支持在Unicode中用,我曾经在C++里用过,不过必须是要以字母开头,代码的注释提示有时不能显示出来,而在C#里中文和字母完全一样,甚至可以是\u12F8。变量名只是一个代号,怎样看得清就怎样定义,反正编译后就变成一个指向内存地址的指针,中文或英文又有什么区别....
强烈支持!!!Top
37 楼billlion(小胖)回复于 2006-03-30 19:50:36 得分 1
建议不要用中文变量名:
1。存在字符转换隐患
2。如果去全英文开发环境的公司怎么办?
3。不要偷懒,编程中用的那点英文还是不难搞定吧?Top
38 楼jrl5365(king007)回复于 2006-03-30 19:53:22 得分 1
还是不要用中文的好!~毕竟现在的开发环境都是外国的!~~
如果哪天全球也用上了中文的那就好了?
Top
39 楼onlyguhong(小黄鹂)回复于 2006-03-30 19:55:16 得分 1
中文变量名的执行效率不如英文的吧Top
40 楼ssddkkee()回复于 2006-03-30 19:58:05 得分 1
"怎样看得清就怎样定义"
如果去全英文开发环境的公司就用英文嘛,那没办法的!Top
41 楼longjdj(大杰)回复于 2006-03-31 07:40:21 得分 0
如果刚开始接触编程,可以使用一下中文变量,可以方便的读懂程序
如果对编程有一定了解,最好用英文,毕竟大多数开发都是英文,在输入程序时也方便输入!!Top
42 楼dafeifei(大飞飞)回复于 2006-03-31 07:44:38 得分 1
看清楚形势吧,这世界谁是老大?
现实一点Top
43 楼LixingTie(生铁)回复于 2006-03-31 08:03:04 得分 0
AgainWarning 就从编译的角度,从中文所占字节数来看,都不会比英文好呀!
这点我不同意,要知道汉字是多么的伟大,就例如"学生",中文4个字节,"student",英文要几个?
--------------
Kshatriya 抛開用戶不說,單説程序運行,你用中文字段,到英文系統可能出現問題,到繁體系統,肯定出問題.其他系統更不用説了.
这点也不同意,你写的程序和系统没多大关系吧??只要.Net Framework认识就可以了吧,.NetFrameword是认识中文的,名字只是一个代号罢了。
------------------
Ivony 拼音不可取
这点同意,呵呵,国人的拼音真是太伟大了,我是打五笔的,拼音实在是猜不出来,同音字太多,呵呵
Top
44 楼efijki(YD)回复于 2006-03-31 08:08:36 得分 0
咱们国家早就有汉语编程了。去年还在我们学校做了次演讲。很多人应该听过。其实 vs .net 既然支持汉语就用呗,没啥不行的。只是个习惯问题而已。Top
45 楼wf5360308(冷月孤峰)回复于 2006-03-31 08:35:50 得分 0
既然支持中文变量那就可以用!Top
46 楼zhf777(八步)回复于 2006-03-31 08:42:39 得分 0
汉语编程
呵呵
就算出了也没多少人敢用
对自己的局限性多大啊
找工作怎么找Top
47 楼dh20156(风之石)回复于 2006-03-31 08:56:37 得分 0
呵呵,JS里的类都支持中文呢,不过还是用英文编写比较规范。 ^_^Top
48 楼LixingTie(生铁)回复于 2006-03-31 09:13:11 得分 0
其实本人英文也不是说不好,至少变量名这些东西还是可以搞定的。但是,英文好并不代表就不能用中文做变量名。我以前也看过一帖数据库表字段名用中文的http://community.csdn.net/Expert/topic/4630/4630698.xml?temp=.8411524
当然,如果是英文环境下,用英文是必须的。但是,其实在一个中文的环境下用中文有什么不好的,就像上面那个链接的帖子里的情况一样,因为那个人用了中文字段,所以其它人对那个系统熟悉很快。Top
49 楼danjiewu(阿丹)回复于 2006-03-31 09:28:08 得分 0
onlyguhong(孤鸿) ( ) 信誉:100 2006-03-30 19:55:00 得分: 0
中文变量名的执行效率不如英文的吧
谁说的?你以为编译器懂英文?编译器就是个文盲,什么都不认识,只知道照搬照抄。Top
50 楼itmingong(nous+wisdom+courage)回复于 2006-03-31 09:52:54 得分 0
我觉得习惯就好了,如果现在用中文反而有点别扭Top
51 楼smile9961(good life)回复于 2006-03-31 13:05:52 得分 0
用中文變量名,那是歷史的後退!
有時間還是多留意一下印度的IT行業吧.Top
52 楼DawnPine(拂晓的松)回复于 2006-03-31 13:15:33 得分 0
这个关印度什么事儿?
人家天生不会中文
我的观点:
如果是自己写给自己(或gf)用的东东, 用中文没什么不可
如果是做项目, 那还是来点专业精神的好Top
53 楼ice_frank(回归......)回复于 2006-03-31 15:26:14 得分 0
肯定要用英文名了Top
54 楼IkusaHime(一品茉莉)回复于 2006-03-31 21:26:04 得分 0
建议用英文, 包括注释.
你自己一个人开发, 用一种 IDE, 那么用什么文都没问题.
如果多人开发, 各人不一定用统一的 IDE, 对中文编码的支持和转换不见得好, 比如别人有时候给我一个 PHP, 对方 IDE 中中文显示正常, 我机子上 Ultraedit 一打开全部乱码, 你说怎么办 ?
Top
55 楼Oversense(步步文)回复于 2006-03-31 22:07:41 得分 0
严重支持中文,虽然我几乎不用Top
56 楼zeusvenus()回复于 2006-04-01 13:09:19 得分 0
最爱中文.
但变量名只用英文.Top
57 楼laopokanhai(学无止境)回复于 2006-04-01 14:34:59 得分 0
ding...Top
58 楼jijl2001(jijl2001)回复于 2006-04-01 14:44:21 得分 0
变量名用中文了,打起来都烦啊Top
59 楼CnEve(龙哥哥)回复于 2006-04-01 15:04:49 得分 0
有意思,支持中文。不过从编码的严格、规范角度来说,还是E文好
说实在的,E文口语我也说不上几句,但代码上的E文一眼就能看懂,这也因为写代码培养出来的Top
60 楼LixingTie(生铁)回复于 2006-04-01 18:03:37 得分 0
谢谢大家的意见,结咯Top




