たとえば、私はIDを持つビューを持っています:
<ImageButton
android:id="@+id/imageButtonStart"
android:layout_width="100dp"
android:layout_height="100dp" />
次のように、同じ名前のプライベートフィールドを作成する必要がありますか?
private ImageButton imageButtonStart;
たとえば、私はIDを持つビューを持っています:
<ImageButton
android:id="@+id/imageButtonStart"
android:layout_width="100dp"
android:layout_height="100dp" />
次のように、同じ名前のプライベートフィールドを作成する必要がありますか?
private ImageButton imageButtonStart;
同じ名前のプライベートフィールドが必要ですか?
いいえ、android:id
レイアウトxmlファイルでは、コードに同じ名前の変数を含める必要はありません。
ただし、IDを検索する場合は、正確な名前を使用する必要があります
View randomName = findViewById(R.id.imageButtonStart);
ネーミングは個人的な好みです。名前の付いたものが何を表すかを明確に定義する名前を選択する必要があります。そして、あなたはあなたの命名スキームと一貫性を保つべきです。
その名前の長さについては議論の余地がありますが、コードが短くて煩わしさが少ないため、一部の人はそれを選択startBtn
します。imageButtonStart
ボタンがImageButton
コードに関係がない場合は、名前を付ける必要はありませんimageButton
。button
意味を明確にするのに十分です。
最も重要な区別が最初に来る階層スキームで名前を使用することを好む人もいます。com.google.market
の代わりにJavaとAndroidのパッケージ名のようにmarket.google.com
。
との代わりに、startButton
とendButton
を選択buttonStart
しbuttonEnd
ました。この背後にある理由は、オートコンプリートをより効率的に使用できるようにするためです。終了ボタンに名前を付けたかどうか思い出せない場合、endButton
またはstopButton
提案のリスト全体を調べる必要がある場合。buttonXYZ
スキームを使用するbutton
と、ボタンであり、いくつかの提案しか得られないことがわかっているので、入力を開始できます。
上記は、一貫性を保つ必要がある理由の良い例でもあります。一方のボタンに名前を付けbuttonStart
、もう一方のボタンに名前を付けると、clickablethingStop
スキーム全体が役に立たなくなります。一貫性のない命名は、正しいものを見つけるためにより多くの時間を必要とし、間違ったものを選択した場合、バグにつながる可能性があります。
もう1つは、名前に使用する言語です。自分自身またはその言語を話す人々のためだけにコードを書く場合は、自分の言語を使用してもまったく問題ありません。しかし、それを他の人と共有したい場合は、英語のままにしてください。間違った英語の名前でも、まったく理解できない言語の名前よりも読みやすく、理解しやすいです。
他にも多くの命名規則があります:WP:命名規則
たとえば、Androidコーディングスタイルガイドには次のように記載されています。
private ImageButton mButtonStart;
または_private static sSingletonThing;
ちなみに、この規則は、Androidソースコードに貢献したい場合にのみ使用する必要があり、独自のアプリを任意のスタイルで作成できます。
あなたが本当に従うべき唯一の命名規則は、一般的なJavaクラス/メソッド/変数スキーマです:(上記のウィキペディアのリンクから)
他の人があなたのコードを読んでいて、あなたが小文字のクラス名などを持っていると、他の人にとって非常に混乱し始めます。
一貫性を保ち、変数に同じ名前を使用することをお勧めしますが、次のようなコード内で手動で接続するため、クラス変数をXML内のIDと同じように呼び出す必要はありません。
ImageButton imageButtonNotStart = (ImageButton) this.findViewById(R.id.imageButtonStart);
私の個人的な好みは、XML内componentTypeDescriptiveName
などの形式を使用することですが、コード内では、などのより英語主導のアプローチを好みます。imageButtonStart
startButton
通常、私は
<ImageButton
android:id="@+id/imageButtonStart"
android:layout_width="100dp"
android:layout_height="100dp" />
ImageButton startButton = (ImageButton) this.findViewById(R.id.imageButtonStart);