TLDR: Dalvik tidak bagus dengan alokasi memori dan Enummenggunakan lebih banyak memori daripada int. Android Lollipop menggantikan Dalvik dengan ART yang tidak menderita keterbatasan yang sama. Dengan demikian rekomendasi ini tidak relevan lagi.
Jawaban panjangnya:
Wow! 8 tahun, 5 jawaban dan banyak komentar kemudian alasan sebenarnya masih belum diatasi.
Pada masa pra-lolipop Android, Dalvik adalah proses yang digunakan VM. Karena sejumlah kecil memori tersedia untuk aplikasi untuk digunakan selama waktu itu, Dalvik memiliki banyak kendala memori. Untuk alokasi memori Dalvik harus berjalan tumpukan dan menemukan ruang. Heap juga akan terfragmentasi dari waktu ke waktu. Dalvik tidak bisa defragment, sehingga akan mengalokasikan dari waktu ke waktu dan akhirnya kehabisan ruang.
Hindari Enum Dimana Anda Hanya Membutuhkan Ints
berasal dari hari-hari Dalvik karena Enumjauh lebih besar daripadaint dan alokasi memori sangat mahal.
Maju cepat hari ini, Dalvik telah digantikan oleh ART. ART keluar di KitKat dan default sejak Lollipop.
ART dibuat dari bawah ke atas bukan untuk mengoptimalkan memori tetapi untuk mengoptimalkan kinerja. Itu juga dioptimalkan untuk alokasi dan koleksi. Alasannya karena memiliki memori yang disisihkan untuk objek besar. Alih-alih meletakkan segala sesuatu di tumpukan yang sama, dan kemudian harus menemukan ruang untuk benda besar di tengah semua benda kecil, ART menempatkan semua benda besar dan bitmap di tumpukan terpisah. Dan kemudian benda-benda kecil pergi di tumpukan terpisah. Itu juga bisa defragment.
Setelah ART, jika Anda menggunakan EnumAndroid tidak peduli dan inilah sebabnya rekomendasinya hilang sekarang.
Ini datang dari Chet Haase di Google. Saya sarankan mencari Google I / O bicara dan menonton seluruh video. Ini berisi banyak informasi berguna dan wawasan tentang Android.