CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

中文变量名 用与不用?

楼主LixingTie(生铁)2006-03-30 10:35:33 在 .NET技术 / C# 提问

我有个同学,他的逻辑思维也不错,不过就是程序设计他怎么学也学不好,开始我也不知道原因。后来有一次,他说他的代码有点问题,叫我帮他调一下,当然,热心的我毫不犹豫的就过去了。过去接过他的代码,一看吓一跳!!根本看不明白...原因是他英文不好,那些变量名、方法名他都是糊乱敲几个字母,根本没有任何意义。但很快,我冷静下来,毕竟我也是班里传说中的高手,怎么能倒在这些小问题上。我开始问他变量的意思,用法。全问了一次后又开始看了一会,还是很晕!!代码太多了。这时他脸上开始露出了怀疑的表情。我一世英名,怎么可以毁在这里!一气之下我把他的变量方法名全部改成了中文,改了之后,思路开始清晰,便跟他讲解一下,结果是我一说他就明白了...我又吓一跳!要知道以前一个问题跟他说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

相关问题

  • 变量名中能用中文么
  • --- VB --- 中文变量名 --- 潜在问题 ---
  • Java能用中文做变量名 哈哈哈
  • 问Windows下有C/C++编译器支持中文变量名吗?
  • 请问vc6.0支持中文变量以及过程,类名吗?vc.net呢?
  • vs.net中可以用中文变量名,或中文类名。呵呵,有意思哈
  • 变量名前缀
  • 采用中文变量名或者过程名或者函数名有没有什么副作用?
  • 谁的英语好帮我定义一下数据库字段变量的名称中文我给出来了
  • 怎样不用第三个变量交换两个变量!!!!!急!!

关键词

  • .net
  • 中文
  • 代码
  • 编码
  • 程序员
  • 编译器
  • 字母
  • 学生
  • 开发语言
  • 项目

得分解答快速导航

  • 帖主:LixingTie
  • iversonkai
  • viena
  • silverpot
  • viena
  • songxiaozhao
  • soaringbird
  • ice_frank
  • iversonkai
  • lovefootball
  • dhcs
  • Tycool
  • mydreamf
  • linglv
  • qruntime
  • shalen520
  • moguiziziwenlong
  • hy98521
  • moodboy1982
  • henry3695
  • wengnet
  • TTLOVEYOU3344
  • GCY516
  • flytigerboy
  • arice1983
  • Ivony
  • cquazhi
  • xxuu503
  • xxuu503
  • dinons
  • hyena041
  • langmafeng
  • AgainWarning
  • Kshatriya
  • qghboy
  • ssddkkee
  • billlion
  • jrl5365
  • onlyguhong
  • ssddkkee
  • dafeifei

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo