为什么Android约定不遵循常规Java

时间:2011-11-06 06:54:02

标签: java android coding-style naming-conventions

所以我现在已经在Android上工作了大约两年了,大约有6年用java,我从一开始就喜欢的东西,我发现它们在哪里Java Convetion,这个指南帮助我写了更容易理解代码你知道典型的CalmelCase Upper用于类的低级方法,或者JavaBean的getter和setter等等。但是我也看到了Android本身有时不跟随其中的一些,

我想知道为什么?

未声明私有属性并遵循getter和setter模式。有人说它是邪恶的吗?或者他们只是为了举例而离开它。

他们用“m”预加词启动成员?对我而言,它有时令人讨厌,但有任何隐藏的真实吗?或者它只是指定成员?

他们似乎喜欢静态课堂,而在此之前我曾经避开它们?

你知道其他任何你想分享的内容吗?

3 个答案:

答案 0 :(得分:3)

当我遇到像你这样的问题时,我找到了一些问题的答案。这是链接:

Android: Designing For Performance

答案 1 :(得分:1)

代码/风格/语言惯例就是:convention,这是一个协议。 您不必遵循Java约定,就好像它是编写Java代码的唯一正确方法。重要的是遵循一些约定,特别是在整个团队中,但是你所关注的那个并不重要。

Android与拟议的Java之间存在一些差异,这可能与移动技术本身有些不同,有些与谷歌工程师在编写它们时的任何偏好有关:)。

答案 2 :(得分:1)

当我使用Android源代码时,我发现Android的设计并不是“面向对象”的好方式。例如,我发现了一些包含2千个代码行的类。还有很多硬编码。如果你这样做,通常的Java程序员会对你生气。之前帖子中的链接表明我们可以使用大对象,静态变量和直接访问字段来提高性能。 Android代码也很好地划分为执行不同任务并具有不同职责的服务。

似乎Google工程师在“良好”的设计和性能之间取得了平衡。