zoukankan      html  css  js  c++  java
  • 编程经验点滴避免使用汉语拼音做变量名

    我曾经见过很多人用汉语拼音做变量名,包括用在数据库中,比如数据库名、表名、字段名,包括用在 java/c#/c++/javascript 中。

    用什么做变量名,本无伤大雅。用汉语拼音做变量名,比用汉字作变量名,要好很多。

    问题在于,汉语中,同音字太多,从汉字转成拼音,很容易转,很容易懂,不会产生歧义。但是让另一个人看汉语拼音做的变量名,则需要这个人的思维中,将拼音转换成汉字,由于同音字的大量存在,会造成理解困难、甚至理解错误。

    同音词举例:

    fujian, 附件/福建

    shanghai, 上海/商海/伤害

    biaozhi, 标志/标致/表侄/婊子

    BYD, 比亚迪/不要爹

    BMW, 宝马车/别摸我

    hanzi, 汉字/汉子

    gangcai,刚才/钢材

    xinren, 信任/新人/新任


    确实不适合做变量名。

    相比较用汉语全拼做变量名的,更不可取的是,很多人用两个、三个声母字母,缩写成一个变量,这种变量更难以理解:因为这种同音词更多。

    比如 GC, 就太多同音词了,这是 ubuntu 的拼音输入法中的:刚才/歌词/钢材/干脆/高层/搞错/观测/刚从/过错/光彩/盖茨/公测/公测/棺材/共存/该村/公厕/甘草/更惨/馆藏/各村/管材/告辞/故此/国粹/干菜/国策

    这是 windows 中微软拼音中的:高层/干脆/刚才/光彩/甘草/故此/钢材/歌词/观测/公厕/共存/果菜/告辞/馆藏/滚存/干才/供词/高参/挂彩/过错/估测/棺材/国策/鬼才/国粹/孤残/骨刺/干草/干菜/过从/管材/跟从/高才/构词/沟槽/怪才/谷仓/光灿/卦辞/更次/固辞/谷草/改窜/攻错/盖菜

    可以想象,如果一个程序员看到以 GC 拼音缩写做变量名,是难以确定这是什么意思的。

    我建议还是坚持用英文单词做变量名,不怕长。很多编程规则中,莫名其妙地规定,变量名不能长。问题是,如果变量名可以取短的,我们自然会取短的,比如 name; 如果变量名取短了,会引起歧义,则我们不得不用长名字,比如 user_chinese_name, user_english_name。

    这不是简单一个规则就能解决的:变量名要少于 n 个字符。

    另外,变量名长了,并没有特别明显的坏处。现在的开发工具 IDE ,都有代码输入自动提示功能,并不会需要多敲多少字母。

    --------------------

    欢迎大家下载试用折桂单点登录系统, http://zheguisoft.com

    转载请注明出处: http://www.cnblogs.com/jacklondon ; 欢迎访问 http://www.zheguisoft.com/ 并提建议。
  • 相关阅读:
    new Date在不同浏览器识别问题
    22. Generate Parentheses dfs填表
    迪杰斯特拉+优先队列实现
    1062 最简分数 (20 分)
    1091 N-自守数 (15 分)
    1054 求平均值 (20 分)
    1045 快速排序 (25 分)
    1086 就不告诉你 (15 分)
    1076 Wifi密码 (15 分)
    1081 检查密码 (15 分)
  • 原文地址:https://www.cnblogs.com/jacklondon/p/2480609.html
Copyright © 2011-2022 走看看