定数にannotationを使う2016年09月22日(編集2016年09月22日)TweetAndroidアプリ開発でAnnotationを使うと、コードの可読性を向上させ、バグを混入する確率を減らすことができます。この記事は、Androidアプリで定数にAnnotationを使った実装方法を記載した記事です。Annotationsは、Androidアプリ開発時に用いることができるアノテーションの集まりです。機能の向上やコード量が減るというようなメリットはありませんが、コードの可読性をあげ、バグの混入を減らすことができます。Annotationsをインストールするには、build.gradleに次のように記述します。ライブラリをインストールします。定数Androidアプリを作成する場合、定数の宣言にはEnumを利用するべきではありません。Enumを使うとDEXファイルの容量が増加します。1回使うだけで整数版よりも約13倍のメモリ使用量になります。アプリにEnumsの数が多いほど容量も増えます。大きなアプリやライブラリであるほど、オーバーヘッドは膨れ上がります。アプリはロードされる時、Androidはアプリのためのシステムメモリを確保します。サブスペース内に、DEXコード全部をロードさせておきます。DEXファイルの容量が増加すると、システムメモリに負担をかけることになります。ProGuardを利用すると、Enumは整数に変換されます。それでもEnumを使うのは極力避けるべきです。定数アノテーション定数にannotationを利用します。サンプルとして本を管理するBookクラスに、本のカテゴリーを管理するcategoryフィールドを用意します。@IntDef定数の宣言は、Enumでなく@IntDefを使います。safetyを適用し、int変数を使って得られるサイズとパフォーマンスの利点を保てます。2;@Retentionはアノテーションの有効範囲です。RetentionPolicy.SOURCEはソース内のみで、コンパイルすると、classファイル内にアノテーションの情報は残りません。宣言したアノテーションはメソッドの引数に適用できます。false;}このように宣言することで、意図しない定数を使用するとコンパイルエラーが発生するようになるので、安全なコーディングができます。Annotationsを使うと、バグの混入の可能性を減らすコードを書くことができます。自分以外にも読みやすいコードになるので、なるべく利用するようにしてください。