などに使用する文字列配列がありますSpinner
。
<string-array name="Animal">
<item >Cat</item>
<item >Dog</item>
<item >Rabbit</item>
<item >Bird</item>
</string-array>
ユーザーが入力または選択した値を格納するコンテナ クラスがありますSpinner
。メンバー変数は、ほとんどがプリミティブまたはEnum
.
public class Container {
protected int index;
protected int age;
protected String name;
protected Animal pet;
}
これは、Enum クラスの 1 つがどのように定義されているかです (これはより単純なバージョンであり、私の実際のコードでは、さらにいくつかのメソッドまたは変数があり、各 Enum インスタンスは CAT のように大文字です)。
public enum Animal {
Cat, Dog, Rabbit, Bird,
}
Enum
ご覧のとおり、XMLでほぼ同じことを繰り返しています。DRYによると、それはあまり良くありません。どちらを削除する必要があり、どのように削除する必要がありますか?
Enum
この時点で、 XML よりも機能的に汎用性が高く、維持しやすいので、維持することに傾いています。私が懸念する可能性のある唯一の問題は、そのパフォーマンスです。より多くのメモリと追加のコーディング作業が必要になる場合があります。