2008/07/08 | Java编程:我们还需要匈牙利命名法吗
类别(计算机与编程) | 评论(1) | 阅读(189) | 发表于 16:50

我做过大量的Java编程工作,但一直是在Servlet和JSP方面,因此我完全没有必要从事Swing GUI编程。对此我一直感到好奇,想了解更多情况;因此,最近我开始阅读Herbert Schildt所写的《Swing:初学者指南》一书。

我还没有读完这本书,不过觉得它非常棒,是我读过的这方面最好的书籍。在技术方面,这本书完全没有毛病。问题在于,在他的所有代码实例中,他总是为Swing组件使用各种匈牙利命名法。

JLabel jlabBass;
JSlider jsldrBass;

实际上,我已经有一段时间没有见过匈牙利命名法了,我想主要是因为许多程序员都有点懒惰(我特别是这样)。总要记得给变量名增加一个适当的前缀,这做起来有些乏味。

如今对你们这些年轻的程序员来说,匈牙利命名法出自微软,基本上是一些在你的所有变量前建立一个前缀的规则。这个前缀会说明那个变量的类型。其好处在于,通过它们的前缀,你可以方便地知道两个变量是否兼容。

随着计算机的速度越来越快,IDE已拥有足够的能力,可以开始实时探测变量的类型。因此,当你编程时,IDE能够向你警告类型不兼容的情况(通常普遍使用微软Word自动拼写检查中的红色弯曲下划线)。

这引出了我的问题:在智能输入IDE领域,我们还有必要使用匈牙利命名法吗?我可能会写出以下这些变量:

JLabel BassLabel;
JSlider BassSlider;

另一方面,我确实看到一贯使用匈牙利命名法的好处。我认为这种方法对于将要打印出来的代码会有好处,如Schildt书籍中的代码。在书面形式中,匈牙利命名法提高了代码的可读性。

那么,你认为我们仍然有必要使用匈牙利命名法吗?你在工作时使用匈牙利命名法吗?

0

评论Comments

日志分类
首页[666]
计算机与编程[133]
EMU[40]
UFOs[24]
房产[127]
音乐[13]
LOG[0]
经济[120]
影视[3]
物理[7]
数学[8]
社会[105]
职场[9]
生物医学[18]
生活[59]