আমি অনেক কনস্ট্যান্ট নিয়ে একটি অ্যাপ্লিকেশন নিয়ে কাজ করছি। সর্বশেষ কোড পর্যালোচনায় এটি উঠে এসেছিল যে ধ্রুবকগুলি খুব বেশি ছড়িয়ে ছিটিয়ে রয়েছে এবং সবগুলি একটি একক "মাস্টার" ধ্রুবক ফাইল হিসাবে সজ্জিত করা উচিত। এগুলি কীভাবে সংগঠিত করা যায় সে সম্পর্কে মতভেদ। সংখ্যাগরিষ্ঠরাই মনে করেন যে ধ্রুবক নামটি ব্যবহার করা যথেষ্ট ভাল হওয়া উচিত তবে এটি এমন কোডের দিকে নিয়ে যাবে যা এই জাতীয় দেখায়:
public static final String CREDITCARD_ACTION_SUBMITDATA = "6767";
public static final String CREDITCARD_UIFIELDID_CARDHOLDER_NAME = "3959854";
public static final String CREDITCARD_UIFIELDID_EXPIRY_MONTH = "3524";
public static final String CREDITCARD_UIFIELDID_ACCOUNT_ID = "3524";
...
public static final String BANKPAYMENT_UIFIELDID_ACCOUNT_ID = "9987";
এই ধরণের নামকরণ কনভেনশনটিকে আমার কাছে জটিল মনে হচ্ছে। আমি ভেবেছিলাম পাবলিক নেস্টেড ক্লাস ব্যবহার করা আরও সহজ হতে পারে এবং এরকম কিছু থাকতে পারে:
public class IntegrationSystemConstants
{
public class CreditCard
{
public static final String UI_EXPIRY_MONTH = "3524";
public static final String UI_ACCOUNT_ID = "3524";
...
}
public class BankAccount
{
public static final String UI_ACCOUNT_ID = "9987";
...
}
}
এই ধারণাটি খুব ভালভাবে গ্রহণ করা হয়নি কারণ এটি "খুব জটিল" ( কেন এটি খুব জটিল হতে পারে সে সম্পর্কে আমি খুব বেশি বিশদ পাইনি )। আমি মনে করি এটি সম্পর্কিত ধ্রুবকগুলির গ্রুপগুলির মধ্যে আরও ভাল বিভাগ তৈরি করে এবং স্বয়ংক্রিয়ভাবে সম্পূর্ণগুলি এগুলি খুঁজে পাওয়া আরও সহজ করে তোলে। যদিও আমি এটি কখনও সম্পন্ন করে দেখিনি, তাই আমি ভাবছি যে এটি কোনও গ্রহণযোগ্য অনুশীলন কিনা বা এর আরও ভাল কারণ যদি এটি না করা হয়।