作者:小K
一个好的变量名能让读代码的人(包括写的人),身心舒畅,但一个“奇葩”的变量名可能会逼疯一个程序员。
今天是奇葩变量名大赏!
(注:以下素材均采集自网络)
先上场的是某企业机房的门牌:
我猜这个主任可能是个胡建人。
正因为这个报错信息中的UnionPay
,导致隔壁银联的客服电话被打爆!
但实际上,这个开发想表达的意思是合并订单支付时的报错,但由于...
“合并支付”的英文是“combined payment”,出现这个问题是因为淘宝工程师不认识combined这个单词。
这是什么?乱码吗?
公布正确答案:
这又是什么?菜谱吗?
publicStringcalculateTomAndJerryHappyTogetherTotalTimeAndReturnToThePreviousLevel(){}
我以为你是段冗余代码:
xxxxxx="网络操作维护中心(主任室)"#消息详细信息
C语言选手:
intdeit;//deit->dateintriqi;//riqi->日期
求求你们,放过我吧。
lv=0x33FF33
这位来自Python的选手的变量名至少让我脱了100根头发,直到我在下文看到
red = 0xFF0033
,我才知道lv
是指绿色!
鄙人早就耳闻了拼音命名法,也不过如此!
letJianCeNianDu=...;letNongTianChanLiang=...;letDiKuaiBinaMa=...;letFeiLiaoHanShuiLv=...;
这样也能接受吧~
letjianceniandu=...;letnongtianchanliang=...;letdikuaibianma=...;letfeiliaohanshuilv=...;
当看到实际的代码:
letjcnd=...;letntcl=...;letdkbm=...;letdkbm=...;letflhsl=...;
以前有个从销售部门转来的程序媛,可能因为英语底子薄,所以一直用拼音命名法声明变量:
classDingdan{privateStringyuanliaomingcheng;privateintchanpinshuliang;privatedoublechanpinjiage;privatelongchanpinxiaoliang;privateintshifoushouchu;}
后来开发老大忍不了了,表示拼音看不懂,让她以后使用中文作为变量名。
此后,该程序媛的代码就变成了这样的:
class订单{privateString原料名称;privateint产品数量;privatedouble产品价格;privatelong产品销量;privateint是否售出;}
这位选手为变量加上了拼音的声调(1234分别代表āáǎà),你们读读看吧~
如今大多数编程语言都支持
Unicode
标识符,用汉字总比用拼音甚至拼音缩写好。
the_eight_divinatory_sybmol_000the_eight_divinatory_sybmol_001the_eight_divinatory_sybmol_010the_eight_divinatory_sybmol_011the_eight_divinatory_sybmol_100the_eight_divinatory_sybmol_101the_eight_divinatory_sybmol_110the_eight_divinatory_sybmol_111
你们知道这都这代表了啥值吗?
公布正确答案:
the_eight_divinatory_sybmol_000="坤"the_eight_divinatory_sybmol_001="震"the_eight_divinatory_sybmol_010="坎"the_eight_divinatory_sybmol_011="兑"the_eight_divinatory_sybmol_100="艮"the_eight_divinatory_sybmol_101="离"the_eight_divinatory_sybmol_110="巽"the_eight_divinatory_sybmol_111="乾"
好家伙,这是八卦图啊!
来自某游戏开发的代码。
此外,八卦图还有另一种写法:
trigram_sun
(乾),trigram_moon
(坤),trigram_water
(坎),trigram_fire
(离),trigram_wind
(巽),trigram_mountain
(艮),trigram_thunder
(震),trigram_marsh
(兑)。
通过今天的文章,大家都学废如何声明变量了吗?
你们还见过哪些惊为天人的变量名,一起分享出来,让我们大家都学习(开心)一下。
关键词: