ブログ


スパイシー技術メモ


必読 Google謹製 Java コーディングスタイル

CATEGORY: プログラム

Google Java Style
先月、Googleさんから、Javaのコーディング規約が発表されていましたので、軽く読んでみました。感想は、DRYでかつ活きたコードを書くための、必要最低限のコーディング規約という感じで、私が普段意識しているものと、ほぼ相違ない感じでした。

その中で、いくつか気になったことがあったのでシェアします。

Javaの命名規則でキャメルケースというのは当たり前の話ですが、判断がわかれるケースで、このように規約を明確にするのはいいですね。

5.3 Camel case: defined

  1. "XML HTTP request" → ○ XmlHttpRequest ×XMLHTTPRequest
  2. "supports IPv6 on iOS" → ○ supportsIpv6OnIos ×supportsIPv6OnIOS

無駄なコメントは、コードを読みづらくするので大嫌いなのですが、コメントを書くべきではない・書く必要がないケースが明示されているものいいですね。

  1. 7.3.1 Exception: self-explanatory methods : Javadoc is optional for "simple, obvious" methods like getFoo, in cases where there really and truly is nothing else worthwhile to say but "Returns the foo".
  2. 7.3.2 Exception: overrides : Javadoc is not always present on a method that overrides a supertype method.

インポート(import)宣言の順番ですが、普段はEclipseにおまかせしています。下記の考え方も素晴らしいのですが、手動はめんどいな・・・。プラグイン書けばなんとかなるかな?

3.3.3 Ordering and spacing : Import statements are divided into the following groups, in this order, with each group separated by a single blank line:

  1. All static imports in a single group
  2. com.google imports (only if this source file is in the com.google package space)
  3. Third-party imports, one group per top-level package, in ASCII sort order
  4. for example: android, com, junit, org, sun
  5. java imports
  6. javax imports

一般常識的には「80桁」と言われていますが、Googleではプロジェクト別に100桁も選べるようです。個人的には、ディスプレイがここまで高解像度になっているなか、メソッド名や変数名がおしゃべりな時代なので、120桁、160桁ぐらいもありじゃないかと思っています。

4.4 Column limit: 80 or 100:Projects are free to choose a column limit of either 80 or 100 characters. Except as noted below, any line that would exceed this limit must be line-wrapped, as explained in Section 4.5,

くだらない決まりが一切ない、すばらしい規約ですので、ぜひみなさんも読んでください!






プレスリリース

人気ブログ記事

採用情報

最新ブログ記事








ページの先頭へ