আমি Bundleনীচের মত একটি ইন্টারফেসে কীগুলির মতো সম্পর্কিত ধ্রুবকগুলির সেটকে সংজ্ঞায়িত করতাম:
public interface From{
String LOGIN_SCREEN = "LoginSCreen";
String NOTIFICATION = "Notification";
String WIDGET = "widget";
}
এটি আমাকে গোষ্ঠী সম্পর্কিত স্থিরদের একসাথে সুন্দর উপায় সরবরাহ করে এবং স্ট্যাটিক আমদানি করে (সরঞ্জাম নয়) তাদের ব্যবহার করে। আমি জানি Androidফ্রেমওয়ার্ক এছাড়াও মত একই ভাবে ধ্রুবক ব্যবহার Toast.LENTH_LONG, View.GONE।
তবে, আমি প্রায়শই অনুভব করি যে Java Enumsধ্রুবককে উপস্থাপন করার জন্য সরবরাহটি আরও ভাল এবং শক্তিশালী উপায় সরবরাহ করে।
কিন্তু একটি ব্যবহার করে performence ইস্যু enumsউপর Android?
কিছুটা গবেষণা করেই আমি বিভ্রান্তির মধ্যে পড়ে গেলাম। এই প্রশ্নটি থেকে
"এনামগুলিকে এড়িয়ে চলুন যেখানে আপনার কেবল ইনটস দরকার" অ্যান্ড্রয়েডের পারফরম্যান্স টিপস থেকে মুছে ফেলা হয়েছে? এটি পরিষ্কার যে Googleএটি "এনামগুলি এড়িয়ে চলুন" তার কার্যকারিতা টিপস থেকে সরিয়ে নিয়েছে, তবে এর থেকে অফিসিয়াল প্রশিক্ষণ ডকস স্মৃতিতে ওভারহেড বিভাগ সম্পর্কে সচেতন হন এটি পরিষ্কারভাবে বলেছে: "এনামস স্থির ধ্রুবকের চেয়ে প্রায়শই দ্বিগুণেরও বেশি মেমরির প্রয়োজন হয়। আপনার অ্যান্ড্রয়েডে এনাম ব্যবহার করা কঠোরভাবে এড়ানো উচিত " " এটি এখনও ভাল আছে? ( Java1.6 এর পরে সংস্করণগুলিতে বলুন )
আরও একটি ইস্যু যে আমি পালন পাঠানোর জন্য enumsজুড়ে intentsব্যবহার Bundleআমি তাদের serializing দ্বারা পাঠাতে (অর্থাত putSerializable(), আমি একটি ব্যয়বহুল অপারেশন আদিম তুলনায় মনে putString()পদ্ধতি, eventhough enumsবিনামূল্যে জন্য এটি উপলব্ধ করা)।
কেউ দয়া করে এটি ব্যাখ্যা করতে পারেন যে কোনটি এর মধ্যে উপস্থাপনের সবচেয়ে ভাল উপায় Android? আমি কঠোরভাবে ব্যবহার এড়িয়ে চলা উচিত enumsউপর Android?