Pourquoi ne pas Android utiliser plus d'énumérations?

J'ai commencé à vraiment comme aide de C# et Java les énumérations dans mon code pour plusieurs raisons:

  • Ils sont beaucoup plus type-safe que des entiers, des chaînes de caractères, ou des ensembles de booléenne drapeaux.
  • Ils conduire à un code plus lisible.
  • Il est plus difficile de définir un enum pour une valeur non valide qu'un int ou string.
  • Ils le rendre facile pour découvrir les valeurs possibles pour une variable ou d'un paramètre.
  • Tout ce que j'ai lu indique que tout entiers en C# et la plupart des machines virtuelles.

Cependant, l'Android cadre a de nombreux cas où des drapeaux de différents types doivent être transmis, mais aucune d'entre elles semblent utiliser les énumérations. Un couple d'exemples où je pense leur utilisation serait bénéfique sont Toast.LENGTH_SHORT /Toast.LENGTH_LONG et View.GONE, View.VISIBLE, etc.

Pourquoi est-ce? Ne enums effectuer de pire que de simples valeurs entières dans Dalvik? Est-il un autre inconvénient que je ne suis pas au courant?

InformationsquelleAutor jnylen | 2011-01-27