Tôi đang làm việc trên một ứng dụng có nhiều hằng số. Trong lần xem xét mã cuối cùng, các hằng số quá phân tán và tất cả nên được tổ chức thành một tệp hằng "chính". Sự bất đồng là về cách tổ chức chúng. Đa số cảm thấy rằng sử dụng tên hằng phải đủ tốt, nhưng điều này sẽ dẫn đến mã trông như thế này:
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";
Tôi thấy loại quy ước đặt tên này là cồng kềnh. Tôi nghĩ rằng có thể dễ dàng hơn để sử dụng lớp lồng nhau công khai và có một cái gì đó như thế này:
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";
...
}
}
Ý tưởng này không được đón nhận vì nó "quá phức tạp" (Tôi không nhận được nhiều chi tiết về lý do tại sao điều này có thể quá phức tạp). Tôi nghĩ rằng điều này tạo ra sự phân chia tốt hơn giữa các nhóm hằng số liên quan và tự động hoàn thành giúp dễ dàng tìm thấy chúng hơn. Tôi chưa bao giờ thấy điều này được thực hiện, vì vậy tôi tự hỏi liệu đây có phải là một thực tiễn được chấp nhận hoặc nếu có lý do tốt hơn mà nó không nên được thực hiện.