所以,我不是匈牙利命名法的铁杆粉丝。今天,我的公司中一位安卓开发人员向我介绍了这个链接,它是关于安卓开发的官方建议,让我惊讶的是,他们认为以m开头的字段名很有用。 我认为,这些mSomeField名称可能只在没有代码高亮的情况下有用,在这种情况下,更容易看出哪些变量是局部的,哪些不是。但现在任何IDE都可以显示这个,对吧?那么,为什么最新的安卓代码需要这些规则和约定呢? 更新: 好吧,我的错,看起来这些建议是给贡献者的(在这种情况下有意义,他们想保持相同的编码方式)。无论如何,我被告知,在安卓项目中经常使用这种方式。如果是这样,问题就在于这些项目。
您需要询问为该项目设置标准的原始开发人员。 :) 我个人认为,考虑到Android是基于Linux构建的,并且其中有相当多的C / C ++代码,我认为使用匈牙利命名法只是旧式C ++影响渗透到代码库的Java方面。 在现代IDE的世界中,这是不幸的,而且在我看来,这种需求有点像“代码异味”。