cockscomblog?

cockscomb on hatena blog

Android Studio便利テク #1 — フィールド名にプリフィックスを付ける

Androidの一般的なコーディングスタイル*1によれば、フィールド名にいくつかの規則がある。このなかにprivatestaticじゃないフィールドはmから始まること、staticなフィールド名はsから始まること、という二つの決まりがある。

Android Studioでそのように書いていると、ゲッターやセッターをGenerateしたときなどにちょっと困ったことが起きる。

    private Object mField;

    public Object getField() {
        return mField;
    }

    public void setField(Object field) {
        mField = field;
    }

本来は上記のようなメソッドが生成されてほしい。しかしデフォルトでは以下のようになる。

    private Object mField;

    public Object getmField() {
        return mField;
    }

    public void setmField(Object mField) {
        this.mField = mField;
    }

mの部分までメソッド名に入ってしまい、getmField()のようなアクセッサが生成されている。これを手でチマチマと修正してはいないだろうか。

Android Studioでは、PreferencesからCode StyleJavaを開いて、Code GenerationタブのNamingルールを変更することでこれを解決できる。

f:id:cockscomb:20140803221407p:plain
NamingルールにName prefix:を設定する

プロジェクト単位ではなくデフォルト値を変えたければFileメニューから辿るとよい。

f:id:cockscomb:20140803221353p:plain
FileメニューからOther SettingsDefault Settings…と辿る

またこれらの設定はRefactor ThisからField…を選択したときのデフォルトの名前にも適用される。

一般的に便利なので必ず設定しよう。


下記の書籍にはこれらの情報は記載されておりませんが単に役に立ちます。

EFFECTIVE JAVA 第2版 (The Java Series)

EFFECTIVE JAVA 第2版 (The Java Series)