近些年来看的代码很少有中间变量名用拼音的了。只是个别时候浏览代码的时候看到过类似,想起来早年间,这样的代码看的挺多的,有时候还要修改/扩展。 那时候就觉得特别别扭。 我觉得,如果要写中文,可以在注释里写。 既然那些地方写不了母语, 就用英语就好了,虽然功能, 性能上没变化,看起来顺眼点。 而且以前有的同事是南方的, 拼音还不标准, 更让人别扭。 一些例子:
string yonghu
int haoma
function xiazai(){...}
数据库表名:Baobiao, 字段: baobiao_id, report_mingcheng, riqi
网页url: app.com/ziliao/baocun
....
前面说过现在接触这种拼音很少了, 但是有的同事写变量什么的是非英语的,和其它英文的变量名一起混着, 觉得和拼音一样很奇怪。
最没辙的是, 多年前弄过一阵子SAP ABAP4, 里面日期类型是Datum,不是Date. 这个没办法了,人家的类型就叫这个。
这让人看着很别扭。 我这不知道算不算强迫症呢?
1
akfish 2014-12-30 00:15:18 +08:00 5
不算,同看不惯。
这年头英文水平基本上可以直接反映出一个程序员的技术水平及发展潜力。 我见过不少英文本来不好的,英文水平往往都会随着技术水平进步。 万年在代码里撸拼音的,技术水平进步了多少可想而知。 坐等玻璃心跳出来打优越感牌。 |
2
yfdyh000 2014-12-30 00:28:11 +08:00
算。但强迫症即好又坏,进步的阶梯与争论的起点。艺术家也反感乃至厌恶不喜欢的作品。但眼高手低更不好。努力到达/促成更好的环境。
|
3
cicku 2014-12-30 00:32:41 +08:00
没学过拼音的表示完全赞同。
学过拼音的表示不服。 坐等楼下开始站队。 |
4
233 2014-12-30 00:33:47 +08:00
接盘过一份代码,部分变量是西班牙语。。(也可能是法语)。。。麻痹的
|
5
kmvan 2014-12-30 00:49:37 +08:00 via Android 1
我用五笔命名问你怕不怕
|
6
incompatible 2014-12-30 00:55:24 +08:00
哦 我平时经常用法语命名变量 英语实在是看起来不习惯
|
7
gdgoldlion 2014-12-30 01:27:10 +08:00 1
偶尔有些地方只好用拼音的。比如游戏里实现技能,技能名叫:降龙十八掌,天山六阳掌。
<( ‵□′)───C<─___-)|| |
8
lm902 2014-12-30 01:37:38 +08:00 1
|
9
sanfenliuqi 2014-12-30 01:45:25 +08:00 via iPhone
其实纯英文命名和纯拼音都能接受,接受不了的是拼音和英文混搭的,比如这种userShuJu
|
10
DeutschXP 2014-12-30 01:55:56 +08:00
我就喜欢这种混合的,让看不懂的人更看不懂就对了。
比如 OrderDatum,Order 是英语,Datum 德语,我喜欢就好,我周围的人能看明白就好。 |
11
lshero 2014-12-30 02:00:38 +08:00 via Android
写拼音也比随便用词典查一个意义不明单词摆在那里的可读性强一点吧。
不过我觉得要写拼音就好好写,尤其是前后鼻音,卷舌音翘舌音一定要分清楚 |
12
gdgoldlion 2014-12-30 02:09:10 +08:00
@lshero 恩,这种事还是得造术语表,或者英语好的问下,字典里经常有UFO
|
13
gdgoldlion 2014-12-30 02:09:24 +08:00
@lm902 太丧尸了,哈哈哈
|
15
typcn 2014-12-30 03:16:56 +08:00 via iPad
vs里面写cpp很喜欢用汉字变量,会被喷吗。
纯拼音还说得过去,怕的是 ShangchuanFiles Xiazaifiles. 再精简一下 xzfl 维护的要疯了 |
16
t6attack 2014-12-30 03:24:48 +08:00
自己常用拼音。但是需要给别人看的代码,为了防止被人BS,直接:a1、a2、b1、c3。。。
|
17
DeutschXP 2014-12-30 03:53:51 +08:00
@KentY 怎么差,至少我周围的人都能看懂。。。尤其一些国际化的公司,但不是 IT 公司,IT管理却没有那么正规的。比如 O2 的一些平台,可能先是英文版的,然后到了德国分公司这边,搞了个本土化,我靠,那里面的语言绝对乱七八糟,提过许多次意见,他们自己的人也不知道该怎么改了,说,就这么弄吧,大家都懂就好。就跟我当年写论文一样,跟个导师是说英语的,德语基本很不利索,但他硬是在我的"感化"下,适应了我的英德语。
有的时候,必须得用英语,比如 Security 和 Safe,对应的都是 Sicherheit,这就不妥了。但有时候,用德语加英语一目了然。比如写Logistik或者Shop系统的时候,IST,SOLL,操作的立刻都懂了,我如果要是去扯什么 target, actual... |
18
lzxgh621 2014-12-30 04:55:47 +08:00
有规则就行,最怕乱命名。
|
19
miyuki 2014-12-30 06:46:22 +08:00 via Android 1
一般都用罗马音
|
20
kneep 2014-12-30 07:07:44 +08:00 via iPhone
我很反感。不过大多数人即使用英文,也不知所云,所以还是拼音吧
|
21
vietor 2014-12-30 08:12:34 +08:00 via Android
英文容易用错词,拼音太掉价,还是英文吧
|
24
beddo 2014-12-30 08:54:19 +08:00
赞同一楼 我不会招这样的程序员……宁可缺着……
|
25
minbaby 2014-12-30 09:03:40 +08:00 via iPhone
楼主对于缩写怎么看,缩写缩的谁都不认识
|
27
blue7wings 2014-12-30 09:08:44 +08:00
英语不好,不会查字典么。。。就是懒。。。
|
28
y 2014-12-30 09:10:04 +08:00 1
有时候英文也很蛋疼,比如折扣,查了字典,写个 rebate. 但是 rebate 是返券好不好,和 discount 完全不是一回事。
|
30
ranran 2014-12-30 09:40:23 +08:00
写了很多 删掉了
简单来说就是 人以群分 物以类聚 相对来说 用英文命名的人群中 素质好的占比比较高 用拼音的占比比较低而已 并不代表使用拼音命名的人 编程能力就差劲 在中国人里面 自然是受过高等教育的用英文命名的编程者各方面会更好一些 因为用英文命名 不但是代表他会编程 会英文 也代表是受过高等教育的人 就算他是一个自学者 那么他也是有足够的自学能力的 综合判断 他是一个人才 所以楼主自己 甚至很多人都没发现这个想法 只是心里觉得 用英文的更规范 更通用 其实这是一个综合判断 并非仅仅从命名习惯来判定的 说这些可能你们还是不太理解 或者说产生误解 简单来说就是 一帮外国人拿着易语言编程 自然有些是用英文来命名的 有些拿中文来命名的 有些拿拼音来命名的 还有使用其他国家文字来命名的 其中以用中文命名的最为通用 最为规范 其技术能力 学习能力 个人素质 综合判断为最高级一级别的人才(因为在易语言的世界,大多人是用中文命名,有好的学习能力的人,当然用大家都通用的汉字) 那么问题出来了 那些用自己国家语言编写易语言程序的人就很差劲吗? 非也 或许最顶尖的高手就在这些人之中也说不定 但是用中文命名那群外国人 综合素质好的占比例绝对是很高的 用易语言来举例子仅仅是做个比喻 没有存在其他任何意思 |
31
Bitex 2014-12-30 09:50:14 +08:00 1
如果我周围的同学能用拼音做变量名再让我帮忙debug,我都能高兴地哭出来……
LZ你能想象一段代码里全都是yxzb(圆心坐标)、class sjx(三角形)、polyzb(多边形坐标)这种神秘的缩写吗…… 其实这都算好…… goto p goto pp goto ppp goto pppp .... 这种程序是人能看的吗!(掀桌 |
32
viator42 2014-12-30 10:01:36 +08:00
看拼音的命名有种思维卡了一下的感觉,全部英文的话就很流畅.
|
33
doushiyinweini 2014-12-30 10:02:42 +08:00
自己老实搬砖,不是领导不管这些
|
34
dychenyi 2014-12-30 10:59:31 +08:00 via Android
没遇到过写拼音的程序员同事。。
|
35
XadillaX 2014-12-30 11:02:23 +08:00
想到以前写 ACM 的时候:
void gao() { //... 搞 } int main() { //... gao(); //... } |
37
lululau 2014-12-30 11:16:59 +08:00
这只是个习惯问题或者风格的问题,用汉语拼音的也不代表英语就一定不行。我知道的有两个 Ruby Gems ,一个叫 nokogiri,一个叫 kaminari,都是用拼音命名的吧
|
38
tcxurun 2014-12-30 11:25:16 +08:00
看具体业务吧,有时候变量如果用英文,要很长或者是没有合适的英文命名
|
39
elvis_w 2014-12-30 11:39:35 +08:00
@lm902 @gdgoldlion 这么翻译还不如拼音呢
|
40
thedarkside 2014-12-30 11:45:08 +08:00
拼音还能忍受,最烦用拼音首字母的,比如手机号码写成SJHM的,看了就想扁人~~
|
41
circsqua 2014-12-30 11:52:26 +08:00
小python脚本,直接中文变量名,哈哈……
|
42
wezzard 2014-12-30 13:11:49 +08:00
datum 是 data 的單數。
datum |ˈdeɪdəm| noun (pl. data || ) 1 a piece of information. See also data. • an assumption or premise from which inferences may be drawn. See sense datum. 2 a fixed starting point of a scale or operation. ORIGIN mid 18th cent.: from Latin, literally ‘something given,’ neuter past participle of dare ‘give.’ |
43
nomemo 2014-12-30 13:33:35 +08:00
这个叫代码规范,看各个公司怎么规定的了
自娱自乐的项目随便你用什么,swift开发你用UFT-8里任意非关键字单词都可以做变量名 好的程序员那就是要不仅写出机器能懂的代码,也是其它程序员都能懂的代码。之前拿到的一份代码规范第一个要点里就明确规定: US English should be used. 连英式英语都不推荐使用 https://github.com/raywenderlich/objective-c-style-guide |
44
sarices 2014-12-30 13:35:39 +08:00
呵呵,切换输入法不累吗?
错误信息:Input string was not in a correct format. Sql:SELECT c_id = [id] ,c_title = [名称] ,c_level = [级别] ,c_pid = (select id from [商品类型] where 编号=a.[父编号]) FROM [dbo].[商品类型] a with(nolock) where not exists( select 编号 from 操作员权限 z left join [商品类型] y on z.类别ID = y.id and z.类别ID > 0 where y.编号 like a.编号+'%' ) order by 编号 asc |
46
leassy 2014-12-30 15:59:31 +08:00
同看不惯,甚至讨厌,我写代码的时候,就算不知道英文是什么也要google一下再写
之前公司的人用MSSQL建的表,表名是拼音,字段名是中文,我勒个去,当时我就跪了 |
49
KentY OP 可能有些特殊情况必须写拼音或非英语。比如提到的游戏里的文化相关的信息,还有专有名称比如taobao,zhihu这类URL或包名。
当然我说的不是这些情况。我觉得多语言混合在代码里(注释除外)非常难读。我觉得应该遵循开发语言本身大部分语言都是英文。而且特别是国际团队共同开发的项目,更应该做到用英文,包括注释。 我自己觉得因为英语不好而写拼音不是借口。可以问,可以查,而且学了新词,在代码里敲那么多次也记住了。对自己对别人都是负责的表现。当然这是小事,上升到责任心有点过。就说这意思吧。 |
50
kf9621735 2014-12-30 18:16:25 +08:00 1
到处都是看到易语言啊,这货真的有那么好么?且先不说中文编程、拼音编程、文言文编程是不是合理。用了这么多年的软件,从来没有遇到过下载的某个不错的软件发现是易语言写的,一个根本没多少人用的东西为什么这么喜欢吹牛呢?
易语言作者声称易语言全部自己手写没有一点微软的烙印,实际上易支持库那就是包装的微软VC++6.0里的MFC框架,所以易语言的窗口指针也就是MFC里的CWnd*指针,把MFC源码打个壳就说是自己的。这个东西除了山寨汉化下关键字,技术上没有任何拿得上桌子面的东西。就连易语言自己写支持库都不用易语言,只会用VC++,写完了再汉化下函数名。搞这么麻烦还不如直接去用C++,还没有什么易语言能做MFC还做不了的东西。 所以大家知道易语言是根本不可能真正的跨平台了,因为MFC就是专用于微软windows的嘛,易语言声称能编译成01二进制的跨平台的机器码,这实际上是玩了一个低级的文字游戏忽悠无知的小白,其实任何数据存储在内存里都可以说是01二进制,这不是耍流氓吗。易语言也就是VB脚本式的伪编译成易格式体,所以易语言早期生成的EXE可以用VB Explorer解开,易的模块现在还有人做出反编译器可以还原出源代码、虽然易语言慌忙推出所谓易包但被反编译也是时间的问题,真正原生编译的编译器还原源代码这种事是没这么容易的。 易语言打的旗号是中国人用自己的编程语言,你看美国人写个编程语言会在LOGO上大张旗鼓的写上“美国人自己的编程语言”吗?!可笑的是用国外的编程语言是免费的,你用“自己的编程语言”还要高价购买,问题是你买的东西里面还是打包的国外的源码。然后易论坛上还整天骂C++骂英文编程骂MFC,哪有儿子整天骂爹的呢,其实只要看看易语言作者吴涛做的视频教程,那桌面上都是些lua新手入门教程、directX入门这些东西,可以看出就连吴涛自己都不怎么使用“自己的编程语言”。 |
51
wheatcuican 2014-12-30 20:54:34 +08:00
|
52
rocai185 2014-12-30 21:40:11 +08:00
@DeutschXP 除非你的代码不要维护的就可以这样,不然你让后面维护你代码的人情何以堪。你可以想象一下他看到你代码时的表情
|
53
greensea 2014-12-30 21:54:55 +08:00
你们啊,too simple,汉语拼音算什么,看看这个 PHP:
http://t1.qpic.cn/mblogpic/61062d66f8eb9dc29dac/2000.jpg |
55
pandada8 2014-12-30 22:16:41 +08:00
是时候用拉丁文作为变量名了,同志们!
|
57
weakfox 2014-12-30 22:19:46 +08:00 via iPad
资深OCD患者表示这不是OCD,一般人都没病。
你们继续跑题。 |
58
hzlzh 2014-12-30 22:25:52 +08:00
我就 BEM + 中文缩写 命名,维护起来相当方便,一目了然,比如:
mod__quanminfeijidazhan 长度什么的完全不是问题 |
59
tt7 2014-12-30 23:13:56 +08:00 1
ZhuDongFangYu.exe
|
63
jy02201949 2014-12-31 00:46:42 +08:00
@tt7 23333 不许这么黑我360啊,你们没有感觉这个进程名萌萌的吗,简直赞,23333,对不起请在容许我笑一会
|
64
RIcter 2014-12-31 01:05:24 +08:00 via iPad
拼音不明了啊不如英语一眼看出来…
|
65
ProfFan 2014-12-31 02:11:33 +08:00 via iPad
学校的教务系统,所有名称全部首字母缩写
com\zhxfjw\xscjcx\cj_zwcjd.java |
66
DeutschXP 2014-12-31 03:17:05 +08:00
@rocai185 什么表情?该有什么表情?如果我要考虑到我的代码后面将会是一个不会英文的德国人来维护,是不是我需要把所有变量都改成德语?如果是英国人我都得改成英语?如果又招了个中国人,我就得改成拼音?一段代码就算是全部都是 a1,a2,该你读懂的时候你也需要读懂。我可以傲娇的说,一个函数,一段代码,一扫眼就应该知道是干什么的,而不应该拘泥于变量名称。我同样也可以傲娇的说,如果不是一扫眼就能看懂,那么多花点时间是应该的。就像 @tt7 说的360的那个进程,我昨天也想到了这个例子,当你参与到一个中国人的项目的时候,或者当你接手一个中国人写的代码的时候,管你哪国人,你就得弄明白 ZhuDongFangYu 什么意思。就好像楼主,他不一样也明白了 Datum 德语是什么意思么,虽然学习SAP不需要学会德语。
|
67
thinkmore 2014-12-31 09:47:57 +08:00
代码洁癖,这个一个好的现象
|
68
bertonzh 2014-12-31 11:08:58 +08:00
网页 url 用拼音或者拼音缩写没什么问题。
程序代码用拼音就要吐槽了。 |
69
luoweihua7sync 2014-12-31 13:32:32 +08:00
好吧,下次的中文我就MD5之后的值做名称。。。
|
72
ichord 2015-01-01 11:44:55 +08:00
shit.
|
73
KentY OP @DeutschXP 是,就这个意思。各人有各人的看法。呵呵。公司情况也不一样,规矩不规矩都是人定的。不管德国还是中国,大都如此。
|
74
KentY OP |
75
xychang 2015-01-02 01:40:46 +08:00
@KentY 想起来这个项目https://github.com/hermanschaaf/mafan,两个外国人写的,起了个拼音名: )
|
76
jarlyyn 2015-01-02 13:07:07 +08:00 via Android
用阿拉伯语都好过拼音。拼音又不是语言,还要猜代表的是什么汉字,还可能猜错
|