Android 私有(private)字段命名规范可以吗?

标签 android coding-style field private

在这里http://source.android.com/source/code-style.html#follow-field-naming-conventions据称:

Field Names

  • Non-public, non-static field names start with m.
  • Static field names start with s.
  • Other fields start with a lower case letter.
  • Public static final fields (constants) are ALL_CAPS_WITH_UNDERSCORES.

它还指出:

The rules below are not guidelines or recommendations, but strict rules. You may not disregard the rules we list below except as approved on a need-to-use basis.

我不喜欢类中私有(private)或包字段前的“m”约定。我真的觉得这没有灵感……我的意思是,如果我们尝试应用好的设计,类的低耦合意味着公共(public)领域很少。实际上,在我的程序中我通常没有公共(public)领域,即使我需要一些我使用 getters 和 setters...

那么,为什么我要被迫让程序中几乎所有字段的前面都有一个“m”?拥有少数公共(public)领域(如果有的话)前面有一些“g”之类的东西会不会更容易?或者只是像 beans 建议的那样使用 setter 和 getter? 这真的让我的代码更难阅读....

此外,遵循这些准则,方法中使用的局部临时变量没有限制,因此它们很容易被误认为是公共(public)全局字段(也没有限制)......我也发现这是错误的,因为它很可能错误的来源... 我知道有一种方法可以区分字段,但是私有(private)/ protected 成员字段是应用程序中使用最多的字段,它们的“可读性”不应该降低。

你怎么看?我应该遵循指南吗?

最佳答案

这些编码指南适用于作为核心 Android 平台的 Android 开源项目。如果您希望您的任何代码被核心平台接受,则必须遵循这些准则。您可以在自己的应用程序中做任何您想做的事。
关于指南本身,我认为它们非常合理,并且与商业应用中使用的许多标准相似。通常,您希望使用 getter 和 setter 进行公共(public)字段访问,并且不希望拥有全局公共(public)变量。只有全局公共(public)常量是可以的。
所以简短的回答是跟随他们的开源项目,决定在你的应用程序中跟随他们。

关于Android 私有(private)字段命名规范可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2132908/

相关文章:

java - 有没有办法检查泛型类的字段是否存在?

android - 如何设置 MenuItem 的图标颜色?

php - 您对三元运算符使用哪种编码风格?

C# 分配/强制转换为结构中的对象字段

c# - 什么时候应该在 C# 中使用 out 和 ref 参数?

ruby - 提前返回 vs if 在 ruby​​ 代码中

Odoo 9 如何在表单 View 中对字段进行排序

android - 使用 buildtools 3.4.0 进行数据绑定(bind) NoSuchMethodError

android - 在 for 循环中动态添加 View 会导致随意定位 - Android

java - Android:如何初始化 View 和 Canvas?