汉语拼音及其它

网友在给铁通做系统,说铁通的系统很多数据库字段名都用汉语拼音来命名,如:dh - 电话,khdh - 客户代号,等等。网友是做ERP出身的,见识过台湾的设计精良的ERP系统,对此颇为不屑。
 
国内早期设计的系统很多都用汉语拼音来命名字段,如沿用至今的深交所行情库,FZQDM - 证券代码,FZQMC - 证券名称,FZJCJ - 最近成交价。记得当时的很多用FoxPro写成的证券交易系统,不光是数据库字段名,连变量名也用汉语拼音的首字母来命名。
 
用汉语拼音的首字母来命名变量(字段名可以认为是一种特殊的变量名),对于不谙英语的程序员不失为一种偷懒的办法,从视觉上看起来整齐划一,但弊端也很明显,因为汉字同音字太多,相同首字母的汉字重复更多,太容易引起歧义,比如:khdh - 客户代号,是不是也可以理解为“开户电话”,“客户电话”?用准确的英文命名则,没有这个问题,虽然多敲两个键,但可读性增强了,望文即可生义,程序或表结构本身就有很好的描述性。
 
有些人干脆直接用汉字来命名字段名,我认为也不可取。一来很多数据库系统不支持汉字字段,有移植性或兼容性的问题,二来不利于软件的国际化,英语已经是科技界的通用语言,是真正的世界语。用英文来命名变量,大家都能够看明白,显得既专业又方便。
早些年有人炮制出一种所谓的“易语言”,关键字都是用汉字来命名的,我十分不看好,完全是逆历史潮流而动。在科学技术领域,固步自封的民族主义只能阻碍科技的发展,且不说一种语言的关键字数量极少,就是多一些,用上个金山词霸什么的工具,也很容易明白那几个单词的。
 
更极端的做法还有,把字段名弄成编号,比如上海交易所的行情库,从S1到S25,S1是证券代码,S2是证券名称,如果没有说明,谁也不知道它们代表些什么。
其实,数据库的字段名就是一种接口,接口是给其它程序来使用的,这个接口必须足够清晰和准确,上交所当初设计的本意可能是以后可能更改字段的含义,这实际上是设计的大忌。接口自然可以扩展,但应该保持兼容。两大交易所后来扩展过多次行情库接口,也只是增加了一些字段,原来的字段含义从来没有变化过。
 
也有些人为了怕人家剽窃他的思想,弄一些天书般的字段名或变量名,私底下甚至是为了巩固自己在公司的老大地位。就怕过上半年,这些代码和接口,连你自己也看不明白了。世界变化那么快,两年前的宝贝,很快就变成垃圾,把这些设计拙劣的代码死死抱在怀里,实在是愚蠢到家了。 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值